25

の出現を検索したい とadabcdオプションbcです。どうやってやるの?つまり、

+-------+----------+
| ad    | MATCH    |
| abcd  | MATCH    |
| abd   | NO match |
| abbd  | NO match |
| abced | NO match |
| abcbcd| NO match |
+-------+----------+
4

2 に答える 2

41

解決策:
オプション 1:ad\|abcd
オプション 2:a\(bc\)\=d
オプション 3:a\(bc\)\?d

閉じるが完全ではない:
オプション 4: a\(bc\)\{-\}d(0 個以上;望ましくないabcbcdに一致)

説明:

+--------+--------------------------+
| \|     | logical OR (alternation) |
| \(bc\) | treat `bc` as a group    |
| \=     | zero or one occurrences  |
| \?     | zero or one occurrences  |
| \{-\}  | zero or more occurrences |
+--------+--------------------------+
于 2013-03-08T22:29:52.387 に答える
7

まあ、私はおそらく愚かですが、要件が

bcがオプションであるadおよびabcdのオカレンスを検索します。

なぜ単純で簡単ではないの/ad\|abcdですか?

于 2013-03-08T23:21:44.490 に答える