0

このリストの 3 番目の項目を照合しようとしています:

/text word1, word2, some_other_word, word_4

このperlスタイルの正規表現を使用してみましたが、役に立ちませんでした:

([^, ]*, ){$m}([^, ]*), 

3 番目の単語のみを一致させ、前後に何もせず、コンマや空白を含めないようにしたいと考えています。正規表現である必要があります。これはプログラムではなく、Word ファイルの UltraEdit です。

some_other_word (またはリストの 3 番目のもの) と一致させるために何を使用できますか?

4

3 に答える 3

2

コミュニティ メンバーからのいくつかの入力に基づいて、正規表現パターンのロジックをより明確にするために次の変更を行いました。

/^(?:(?:.(?<!,))+,){2}\s*(\w+).*/x

説明

 /^ # 1.- Match start of line.
 (?:(?:.(?<!,))+ # 2.- Match but don't capture a secuence of character not containing a comma ...
 ,)              # 3.- followed by a comma  
 {2}             # 4.- (exactly two times) 
 \s*             # 5.- Match any optional space
 (\w+)           # 6.- Match and capture a secuence of the characters represented by \w a leat one character long. 
  .*             # 7.- Match anything after that if neccesary.
  /x     

これは以前に提案されたものです。

/(?:\w+,?\s*){3}(\w+)/
于 2013-09-27T00:46:00.000 に答える