正規表現で任意文字を残して置換したい

正規表現で任意文字を残して置換したい

- ueki ichiro の投稿
返信数: 2

Windows11の富士通ノートパソコンで texworksで論文を書いています。

古い論文のなかで \textbf{...} を使って太字で書いた数字を普通の数字に直すため、 ... で表した数字を残して ... の前後の \textbf{} を消去したいのです。

このため正規表現で検索文字を (textbf{[0-9]+}) 、置換文字を $1 としましたが失敗しました。正しい方法をご教示ください。また検索文字をを (\textbf{[0-9]+}) とすると検索もエラーになりました。\  を含む上のような文字列の検索法も教えて頂ければ幸いです。

  植木

ueki ichiro への返信

Re: 正規表現で任意文字を残して置換したい

- Z. R. の投稿

以下で所望の結果になるはずです(TeXworksで確認した)。

  • 置換対象: \\textbf\{([0-9]+)\}
  • 置換結果: \1

要点としては以下の通りです。

  • \ { } の前に \ が必要
  • 「数字の部分」に ( ) を付ける
  • 置換結果の「1番目の括弧部分」の表記はソフトウェアによって $1 だったり \1だったり異なるが、TeXworksは後者