で貪欲でないパターン(正規表現)マッチングを行いたいawk
。以下に例を示します。
echo "@article{gjn, Author = {Grzegorz J. Nalepa}, " | awk '{ sub(/@.*,/,""); print }'
短い文字列を選択する正規表現を書くことは可能ですか?
@article{gjn,
この長い文字列の代わりに?:
@article{gjn, Author = {Grzegorz J. Nalepa},
この結果を取得したい:
Author = {Grzegorz J. Nalepa},
私は別の例を持っています:
echo " 、 article {gjn、Author = {Grzegorz J. Nalepa}、" | awk '{sub(/ 、 [^、] *、/、 ""); 印刷} ' ↑↑^^^^^
入力文字列と正規表現の両方の最初の位置で、@
文字をコンマ(,
)文字に変更.*
しました(また、に変更しました[^,]*
)。短い文字列を選択する正規表現を書くことは可能ですか?
, Author = {Grzegorz J. Nalepa},
長い文字列の代わりに?:
,article{gjn, Author = {Grzegorz J. Nalepa},
この結果を取得したい:
,article{gjn
Author
、コンマと空白の後に、空白が続き、空白が=
続き、空白が続き、{
その後に任意の非}
続きが続くことを探すことができますが}
、これは(とりわけ)あなたが部品{}
内にネストできないことを必要とします= { ... }
。