2008-11-28 9 views
6

Bir sözcükle eşleşen bir RegExp'e veya tırnak içinde birden çok kelimeye ihtiyacım var.RegExp bir Word veya Quotes'taki Birden Fazla Kelimeyi eşleştiriyor

[\ w] * *" tırnak içinde birden fazla kelime ile eşleşir. Btw

(değil emin niçin \ w \ "[] & & [^ W \ ​​w \"] bir kelime

maçları W eserler değil, basit.

Peki ben birleştirmek mi (tüm karakterleri eşleşmesi gerekir) bu iki regexp'in?

cevap

4

"[^"]+" (? ne istersen yap bir çift tırnak, maç maç mu bir veya daha fazla çift ​​tırnak olmayan chars, sonra m Eğer maç, ^" herşeyi maçları

"\s*((?:\w(?!\s+")+|\s(?!\s*"))+\w)\s*" 

yerine "[^"]+" çünkü hayır sadece \w (alfanümerik) Char [a-zA-Z_0-9]

O yolu. İkinci bir çift tırnak)

3

ben tercih ediyorum atch Sadece \w, takip boşlukları olmadan alıntılar içinde chars.

" ee eee e ee " 

grubunda verir (1):

ee eee e ee 

(?!\s+") emin Çift alıntı önceki son boşluk bırakmayın yapmak için buradayız negatif ileriye bakma; Her şeyden önce

6

.

Yanıtlarınız gerçekten yardımcı oldu - ama sorumu fark ettim belki de yeterince açık değildi.

Neyse, cevaplardan ben bu regexp ile sona erdi:

"[^"] + "| [\ w] + Tırnak içinde Kelimeler ve Çoklu Kelimeler maçları

.

örn: ne "bu şey" 3 eşleşmeleri verecektir: ilk maçı: ikinci maç ne : üçüncü maç şudur: "bu şey"

Tam olarak ihtiyacım olan şey budur. Tekrar teşekkürler.

+0

+1 Çok daha basit;) İlk başta istediğini anlamadım, ama cevabımı referans olarak bırakıyorum – VonC

İlgili konular