2017-02-08 3 views
0

文字列内のファイル名を検索しようとしていますが、名前の前後に区切り文字があるかどうかは予測できません。ファイルの種類で終了します。 「3月2日のdeadline.doc(0399 F_1221A.pdf)を満たすための作業計画」という文字列で例えば文字列内に複数のファイル名を見つける正規表現

私は3月2日のdeadline.docを一致させたい と0399 F_1221A.pdf

私は/\d{1,4} .*(\.docx|\.doc|\.ppt|xls|\.pdf)/giを使用しています正規表現 がシングルマッチを返して '3月2日のdeadline.doc(0399 F_1221A.pdf'

私が間違っているのは何https://regex101.com/r/yUkABU/3

を参照してください?

+0

@MymsManを除き、すべてをマッチングしてみ参照してください。 *? – ffledgling

答えて

3

使用怠惰Qグリーディーなものの代わりに.*の代わりに.*?を使用してください。

はあなたには、いくつかのより多くのサンプルと何が*シングルマッチを返していることで意味を添付してくださいすることができ、

+1

*あなたが私のことを気にかけなければ、私の答えの役に立つ部分をあなたの答えのコメントに変換します。* OPのregex101リンクを使用したデモがあります:https://regex101.com/r/cCwAyl/1 –

+0

@JosephMarikle例をありがとう:) – sp00m

+0

ありがとう、トリックをうまくやっているようです – MymsMan

関連する問題