1

たとえば、文字列の場合:

http://www/host/a/b/c/topic/d/e/f/topic/last.html

FIRST「トピック」の前の文字列の値である「b」と「c」の値を取得したい。

を使用する.+/(.+)/(.+)/topic/(.+)と、「e」と「f」が得られます。貪欲モードなのはわかっているので、2番目の「トピック」に一致しました。しかし、のように怠惰なモードに変更して.+?/(.+?)/(.+?)/topic/(.+)も、まだ機能していませんでした。

4

2 に答える 2

0

私は次のようなものを使用する傾向があります。

[^/]+/([^/]+)/([^/]+)/topic/(.+)

アイデアは、任意の文字に一致する代わりに、次のスラッシュまで一致することです。括弧 ,[]は文字クラスを定義し、チルダ ,~は「not」を意味するため[^/]、スラッシュ以外のすべてに一致します。

于 2012-11-29T08:01:15.347 に答える
0

これを使ってみてはどうですか?

^.+?/([^/]+)/([^/]+)/topic

ここにデモンストレーションがあります: http://rubular.com/r/F97qwqjLRj

于 2012-11-29T08:01:20.667 に答える