如何在JavaScript中使用支持Unicode的正则表达式?例如,应该有类似于\ w的东西可以匹配字母或标记类别中的任何代码点(不仅仅是ASCII代码),并且希望像[[P*]]这样的过滤器用于标点符号等.
如果我有很多匹配,例如在多行模式下,我想用匹配的一部分替换它们以及增量的计数器号.
我想知道任何正则表达式的味道是否有这样的变量.我找不到一个,但我似乎记得那样存在......
我不是在谈论可以使用回调替换的脚本语言.这是关于能够在RegexBuddy,sublime text,gskinner.com/RegExr等工具中实现这一点,就像你可以用\ 1或$ 1引用捕获的子串一样.
我\b在正则表达式中使用和希腊字符有困难.
在这个例子中 [a-zA-Z??-??-?]*成功地标记了我想要的所有单词(希腊语和英语).现在考虑我想找到2个字母的单词.对于英语,我使用这样的东西:
\b[a-zA-Z]{2}\b.你能帮我写一个正则表达式,成功用2个字母标记希腊语单词吗?(为什么?我的最终目标是删除它们).
使用的文字:
希腊单调:Τογάρούνκαιπαρ 'υμίνλεγόμενον,ώςποτεΦαέθωνΗλίουπαίςτοτουπατρόςάρμαζεύξαςδιατομήδυνατόςείναικατάτηντουπατρόςοδόνελαύνειντατ' επίτηςγήςξυνέκαυσεκαιαυτόςκεραυνωθείςδιεφθάρη,τούτομύθουμένσχήμαέχον λέγεται,τοδέαληθέςεστιτωνπερίγήνκαικατ'ουρανόνιόντωνπαράλλαξιςκαιδιάμακρόνχρόνονγιγνομένητωνεπίγήςπυρίπολλώφθορά.
希腊POLYTONIC:Τὸγὰροὖνκαὶπαρ 'ὑμῖνλεγόμενον,ὥςποτεΦαέθωνἩλίουπαῖςτὸτοῦπατρὸςἅρμαζεύξαςδιὰτὸμὴδυνατὸςεἶναικατὰτὴντοῦπατρὸςὁδὸνἐλαύνειντὰτ' ἐπὶτῆςγῆςξυνέκαυσεκαὶαὐτὸςκεραυνωθεὶςδιεφθάρη,τοῦτομύθουμὲνσχῆμαἔχον λέγεται,τὸδὲὲληθέςἐστιτῶνπερὶγῆνκαὶκατ'οὐρανὸνἰόντωνπαράλλαξιςκαὶδιὰμακρὸνχρόνονγιγνομένητῶνἐπὶτῆςγῆςπυρὶπολλῷφθορά.
英语:事实上,在你们国家和我们的故事中讲述了这个故事,曾经的赫利俄斯之子帕森曾经用他的父亲的战车,并且,因为他无法沿着他父亲的路线驾驶它.烧毁了地球上的所有东西,他自己也被雷电摧毁了 - 据说,这个故事具有传说的风格,但它的真实性在于天体中身体的移动.它绕着地球移动,并通过猛烈的火焰摧毁地球上的东西,这种火焰会长时间地复发.
到目前为止我尝试过的:
// 1
txt = txt.replace(/\b[a-zA-Z??-??-?]{2}\b/g, '');
// 2
tokens = txt.split(/\s+/);
txt = tokens.filter(function(token){ return token.length > 2}).join(' ');
// 3
tokens = txt.split(' ');
txt = tokens.filter(function(token){ return token.length != 3}).join(' ') );
Run Code Online (Sandbox Code Playgroud)
我在这里提出了2和3的问题:Javascript - 正则表达式 - 如何删除指定长度的单词
编辑
阅读: