3

リスト内の文字の範囲に一致する正規表現がありますが、単語と一致しないようにしたいと思います。

私の正規表現は次のとおりです。

^widget/([\w\d~]+)/?(?:[\w\d~]+)/?$

私はそれをこのように一致させたいです:

  • widget/JQYHHU-ウィジェットを表示、一致する必要があります
  • widget/JQYHHU/-ウィジェットを表示、一致する必要があります
  • widget/JQYHHU/bag-of-screws-ウィジェットを表示、一致する必要があります
  • widget/JQYHHU/bag-of-screws/-ウィジェットを表示、一致する必要があります
  • widget/add-ウィジェットを表示します。一致しないでください
  • widget/add/-ウィジェットを表示します。一致しないでください

文字と一致するように条件を追加することはできますが、「追加」という単語を綴る場合はできませんか?

4

1 に答える 1

9
^widget/(?!add)([\w\d~]+)/?(?:[\w\d~]+)/?$

これは、ゼロ幅の負の先読みアサーションです。基本的には「今いるところに立って、楽しみにしていてパターンが見えないaddようにしますが、終わったらカーソル位置を動かさないでください」と書いてあります。

ここでそれを読んでください:http://www.regular-expressions.info/lookaround.html

于 2012-04-28T13:35:02.123 に答える