4

次のパターンのテキストがあります。

1 NAME word1 word2 wordn /words/
...
...
1 NAME word1 word2 wordn /words/

そして、次のように並べ替える正規表現が必要です。

1 NAME /words/ word1 word2 wordn
...
...
1 NAME /words/ word1 word2 wordn

私はこれをやろうとしていますが、文字までnnotepad++個の単語に一致する正規表現を理解できません/

助けてください!

4

3 に答える 3

7

探す: ([^ ]+) ([^/]+)/([^/]+)/

  • ([^ ]+)グループ内のスペース以外の「名前」に一致します\1(その後にスペースが続きます)
  • ([^/]+)/グループの最初の単語まで、「すべての単語」に一致します\2
  • /([^/]+)/グループ内/との間のすべてに一致します/\3

と置換する: /\3/ \2\1

于 2012-10-01T22:22:05.360 に答える
1

これは MS Word で行うことができます (Visual Studio でも同様だと思います)。MS Wordで行う方法は次のとおりです。

Match String: (<*>) (<*>) (<*>) (<*>) (<*>) (<*>)
Replace String: \1 \2 \6 \3 \4 \5

MSWord では、正規表現について特に言及していませんが、バックエンドで使用している可能性があります。バックスラッシュ () で始まる単語である \word\ のマッチングに問題があることに注意してください。確実に機能させるために、単語からバックスラッシュを削除することをお勧めします。

于 2012-10-02T12:36:53.987 に答える
1

試す

(?<=1 NAME )(\S+ ){n}/words/
于 2012-10-01T21:25:42.333 に答える