2010-08-17 48 views
0

真的很簡單:reg ex newby - 您如何指定匹配字符但不包含在輸出中?

例如:在此字符串:

my dog said "woof" today

我想獲得在引號括起來的,但不包括引號...

---更詳細---

不幸的是,正則表達式是通過第三方軟件,所以我不知道底層的引擎。

這裏的字符串:

href="http://pagingdrgupta.blogs.cnn.com/2010/08/17/dengue-fever-increases-in-florida/?hpt=T2">Dengue outbreak 

當前正則表達式:

(https?://)?([-\w]+(\.\w[-\w]*)+|([a-z0-9]([-a-z0-9]*[a-z0-9])?\.))+(com|edu|biz|gov|in(t|fo)|mil|net|org|[a-z][a-z]\.[a-z][a-z])\S*)

這將返回:

http:.../?hpt=T2">Dengue

添加"啓動和正則表達式WOR結束ks,但包括"

也許還有另一種方式?

+0

你的問題只是說你想匹配沒有引號的引用字符串,但你的正則表達式顯然是用來匹配一個URL - 什麼給出了?您是否嘗試匹配所有網址或引號中的網址,或者是什麼? – 2010-08-17 22:54:57

回答

0

這將取決於您使用的正則表達式的「味道」。如果您的正則表達式引擎支持lookarounds(積極向後看,積極向前看,負面向後看和負面看法),你可以做到這一點。

語法也因風格而異,所以如果您編輯問題和/或標籤以顯示您正在使用的語言,則可以獲得更具體的答案。

+0

不幸的是,正則表達式是通過第三方軟件,所以我不知道底層的引擎。 | 以下是字符串: href =「http://pagingdrgupta.blogs.cnn.com/2010/08/17/dengue-fever-increases-in-florida/?hpt=T2」>登革熱疫情 |當前正則表達式: (https?://)?([ - \ w] +(\。\ w [ - \ w] *)+ |([a-z0-9]([-a-z0- 9] * [A-Z0-9])\))+(COM?|。EDU | BIZ | GOV |在(T | FO)|密耳|淨|有機|。[AZ] [AZ] \ [AZ] [az])\ S *) | 這將返回: HTTP:.../HPT = T2「>登革熱 | 添加」啓動和正則表達式的作品的結束,而是包括」 |也許有另一種方式 – Kieryn 2010-08-17 18:07:47

+2

@Kieryn添加到您的?。?問題 – 2010-08-17 18:11:59

+0

你的正則表達式軟件是否不支持捕獲組?如果你的字符串只有一個href,可能類似'href =「([^」] +)「'工作(應該捕獲url)。 – cam 2010-08-17 22:26:04