0

次のように、完全修飾名を使用して実行可能ファイルをリストするキーと値のペアのセットがあります。

  ["exec"] = "/share/home/00288/tg455591/NAMD_2.8b3/NAMD_2.8b3_Linux-x86_64-MVAPICH-Intel-Ranger/namd2",

ただし、ディレクトリの場所を取り出して、次のような実行可能ファイルのみを出力したいと思います。

  ["exec"] = "namd2",

この変更を行う正規表現を作成するにはどうすればよいですか? ファイル内の実行可能ファイルはすべて異なりますが、形式は似ていることに注意してください。ファイルのサイズは約 6000 行です。前もって感謝します。

4

3 に答える 3

1

この正規表現はトリックを行いました:

(?<=\["exec"\] = ").+?(?=[^/]+?(?:\.\w+)?")

と置換する:

\1\2
于 2013-04-16T03:13:52.540 に答える
1

これを試して見つけてください:

(?<="exec"] = ")[^"]*?/([^/"]+)(?=")

そしてこれを置き換える:

\1

(または $1)

于 2013-04-16T03:19:00.763 に答える
0

問題を正しく理解していれば、次sedのコマンドでうまくいきます。

sed 's|= .*/|= "|'
于 2013-04-16T03:03:47.853 に答える