0

名前に一致する正規表現の作成に問題があり、名前の後に数字を含むページが続く場合、両方に一致する必要があります。

最初の例は、正規表現が | を検出するため、ページと一致しません。これは怠け者です。

name|(?:,page(\d+))/

name/
name,page1/

2 番目の例は、名前とページ番号に一致しますが、名前だけには一致しません。

(?:name)(?:,page(\d+))/

これ以上のアイデアがないか、正しい表現の特殊文字に気づきませんでした。

誰かがこれを修正するためのヒントを教えてくれませんか:)?

編集:私はその解決策を思いつきました:

name(,page(\d+))|name/
4

1 に答える 1

2

オプションの演算子を利用する...

name(?:,page\d+)?\/

(?:,page\d+)は非キャプチャ グループであり、?1 回または 0 回出現する可能性があることを意味します。

ここを参照してください。

于 2013-05-22T08:08:06.760 に答える