LibreOffice Writer のオンライン コースに実装する一連のテスト問題をフォーマットしようとしています。テストの問題形式が最近変更されたため、実装前にテキスト ファイル内の 500 以上の問題をすべて更新する必要があります。
現在、質問は次のようになっています。
1. alter verb (awl-ter)
to change; become different or modified
■Example: The design of the king’s suit was altered to suit his taste.
□Note: Can be confused with altar , alter.
フォーマットを次のように変更する必要があります。
Word: alter verb (awl-ter)
Definition: to change, become different or modified
Example: The design of the king’s suit was altered to suit his taste.
Possible Exam Question: Can be confused with altar , alter.
定義行を除いて、ほとんどの行を自動的にフォーマットできる十分な正規表現を知っています。具体的には、「Word」行の直後の行頭に「Definition:」という単語を追加する必要がありますが、これを適切に行う方法がわかりません。
(\b\d+\.\s\w.*[\r\n])
各定義グループの最初の行を見つけることができる(上記のように)を使用してみましたが、新しい行/リターンまで - ただし、$1Definition:
ライターの正規表現ヘルプファイルによると、元の結果を保持する必要があるテキストを追加しようとすると「$1」の後にあるものを追加すると、一度置換され、その後の「置換」クリックで再び機能しないか$1Definition:
、「すべて置換」ボタンを使用している場合はすべてがリテラル文字列に置換されます...
文字列を強調表示する検索機能のスクリーン キャプチャを追加しました。検索で探しているものが見つかったようで、[すべて検索] をクリックすると、各セットの最初の行が強調表示されます。
「置換」を複数回クリックするか、「すべて置換」をクリックしようとすると、(上記のように) 問題が発生します。
私は現在、問題が何であるか/これを修正する方法について途方に暮れています. 私の正規表現が検索クエリと出力を何らかの形で破損しているようです。