Bir proje için Node.js kullanıyorum ve Javascript'in regex sözdizimini çok sınırlayıcı olarak görüyorum. Özellikle de bakma eksikliği beni öldürüyor. Dizeleri cümle haline getirmek için regex kullanmaya çalışıyorum ama Bay ve Bayan gibi ortak kısaltmaları kontrol etmek istiyorum, böylece cümleleri kırmam. Onların regex özelliklerini ekleyen bir Node.js kütüphanesi var mı, yoksa iyi bir hareket tarzı ne olurdu? Bu javascript regexes ile zorluk varNode.js'de daha iyi regex uygulaması yolu
cevap
,
özel sorunu önlemek için bir yol: http://blog.stevenlevithan.com/archives/javascript-regex-lookbehind
Düğüm: Daha fazla püf noktaları için
/((?:Mrs?\.)|[^\.]+)+/ # match all that is not a dot or Mr. or Mrs.
, bu sitede bir göz alabilir .js, v8 motoruna dayanır ve regex motoru, v8'in bir parçasıdır. V8 projesi burada barındırılıyor: https://code.google.com/p/v8/. Normal ifade motoru şu dosyadan gelir: https://code.google.com/p/v8/source/browse/trunk/src/ia32/regexp-macro-assembler-ia32.cc?r=4966. Asıl çatalımda projeyi yapabilir ve istenen özellikleri ekleyebilirsiniz. Bunun, değerinden daha fazla çaba göstereceğinden şüpheleniyorum.
Düzenli ifadeler genellikle ayrıştırma için tasarlanmamıştır. Node.js için burada bulunan birçok ayrıştırma kütüphanesi vardır: https://npmjs.org/search?q=language+parsing. Ben şahsen kendim yaptım ve benim amaçları için mükemmel çalıştı sıcak kakao (https://github.com/olleicua/hot-cocoa) tavsiye ederim. amacınız ise ilki ise
Sonunda sadece sonra böyle bir şey işe yarayabilecek 'Mr' veya 'Bayan' Herhangi tek bir kelime veya iki kelime maç için:var text = 'Mr Potter and Mrs Smith were walking to the house of Mrs Sullivan';
text.match(/(?:Mr |Mrs)?\w+/g);
// returns: [ 'Mr Potter', 'and', 'Mrs Smith', 'were', 'walking', 'to', 'the',
// 'house', 'of', 'Mrs Sullivan' ]
- 1. Bunu yazmanın daha iyi yolu?
- 2. Yapısal Mülkiyet veya daha iyi bir yolu?
- 3. Bu CSS'yi yazmanın daha iyi bir yolu?
- 4. İçerik almanın daha iyi yolu nedir?
- 5. Nhibernate Relation tablosunu yönetmenin daha iyi yolu
- 6. Statik yöntemi tanımlamanın daha iyi bir yolu
- 7. Regex en iyi uygulamaları
- 8. iyi yolu
- 9. TR1 - Hangisi daha iyi?
- 10. 2 Benzer iOS uygulaması - bunları yönetmenin en iyi yolu nedir?
- 11. Web sitesi projeleri vs Web Uygulaması - hangisi daha iyi?
- 12. JSCH'den daha iyi bir Java uygulaması var mı?
- 13. Arabirimde kalıtım/hiyerarşiler. Net - daha iyi bir yolu var mı?
- 14. iyi yolu
- 15. iyi yolu
- 16. iyi yolu
- 17. iyi yolu
- 18. Bir WinRT Uygulaması için Ayarları Tutmanın En İyi Yolu?
- 19. daha hızlı yolu?
- 20. jQuery - teklifleri olan dizeleri birleştirmenin daha iyi yolu?
- 21. Sadece sağ taraf null değilse, atamanın daha iyi bir yolu?
- 22. günün saatini ayıklamak için daha iyi bir yolu var mı?
- 23. Metin dosyasındaki satırları saymanın daha iyi bir yolu var mı?
- 24. Bunu yazmanın daha iyi bir yolu var mı?
- 25. Benzersiz öğelerin oluşum sayısını saymanın daha iyi bir yolu?
- 26. Realm: Realm Objects oluşturmanın (veya paylaşmanın) daha iyi yolu nedir?
- 27. WebView yenilemek için daha iyi bir yolu var mı?
- 28. Veritabanı kimliklerini ve arama adlarını depolamanın daha iyi yolu
- 29. İlk öğenin tümünü değil, daha iyi bir yolu var mı?
- 30. Belirli karakterleri Perl dizesinden kaldırmanın daha iyi yolu
'npm arama regex'. veya: https://npmjs.org/search?q=regex –
http://xregexp.com/, Node.js ile çalışır, ancak, alas, lookbehind iddialarını sunamaz. –