2017-07-02 57 views
0

我想匹配重音單詞或沒有法語口音正則表達式匹配的重音字符

例子:佩爾的Pèreà一個

現在IM使用這個簡單的正則表達式((!!。* \ b \ 1 \ b)不匹配2次相同的單詞)

(pere|mère|a)(?!.*\b\1\b) 

林在Javascript中使用正則表達式的新

new RegExp("(pere|mère|a)(?!.*\\b\\1\\b)", 'gi') 

感謝

+0

這是什麼目標?您是否嘗試刪除重音符號(例如清除URL的例子)? –

+0

不刪除只用'var regex = new RegExp(「(pere)(?!。* \\ b \\ 1 \\ b)」,'gi'); 「père」.match(正則表達式)' – Miky

+0

請注意,'à'不是一個單詞字符,所以單詞邊界'\ b'不適用於它,因爲它對於'a'。如果你想對'[aà]'有負向前瞻,那麼你可能首先必須用'a'替換所有'à',然後運行這樣的正則表達式。 – LukStorms

回答

1

你需要定義字符類然後,例如:

p[èe]re 

這可以被看作是像

交替
  • Match p
  • 比賽èË
  • 比賽[RË

a demo on regex101.com

+0

謝謝你,但我需要所有帶口音的單詞(père,mère,à,français,...)誰可以做到這一點? – Miky

+0

@Miky:不行,字符'è'(138)與e'(101)不一樣,請參見[ASCII表格](http://www.chip.de/ii/1) /2/5/4/9/5/8/0/ascii-93c823e7009f26b0.png)。 – Jan