我需要的(可能)正則表達式(或兩個)做如下:替換連字符周圍的空間與NBSP
- 與
我更換任何單個字母的單詞後,每一個空間發現這個question,但是,如果有撇號的詞(就像那裏),先前的正則表達式'認爲'撇號後的's'是單個字母(這是不正確的)。我只需要在單個字母之後/不需要任何其他字母(不是在單詞之後,而不是在單詞之後帶有撇號)之後需要空間
我希望有人熟練地在撇號捕獲後更新以前的答案。
謝謝!
我需要的(可能)正則表達式(或兩個)做如下:替換連字符周圍的空間與NBSP
我更換任何單個字母的單詞後,每一個空間發現這個question,但是,如果有撇號的詞(就像那裏),先前的正則表達式'認爲'撇號後的's'是單個字母(這是不正確的)。我只需要在單個字母之後/不需要任何其他字母(不是在單詞之後,而不是在單詞之後帶有撇號)之後需要空間
我希望有人熟練地在撇號捕獲後更新以前的答案。
謝謝!
這是否符合您的期望?
/(?<=^\w) |(?<=\s\w)/
(?<=\s\w)
是回顧後,來檢查,如果存在空白和空白前一個單詞的字符。 (?<=^\w)
是爲了說明單個字母是字符串中的第一個字母的情況。
\w
也包含_
,如果這也不行比你可以定義自己的角色像類或[a-zA-Z]
用改性劑使用unicode的東西\p{L}
一起u
如何:
preg_replace('/(\S) ', '${1} ', $mystring);
的\S
任何非空白字符相匹配。
是不是這其實更糟糕,沒有按」用這個替代每個罪惡空間?我想在單個字母后替換空格。 –
等一下,你不是說「每一個字母后的每個空間」嗎?這個正則表達式正在做我認爲的,至少對於「每一個字母」的合適解釋......你是指在每個「被空白包圍的單個字母」之後? –
那麼,這是我的錯,我的意思是'每一個字母詞'。抱歉! –
是的,這完全是'rad':D –
改進後的版本也匹配字符串的開頭:'/(?<=^\ w)|(?<= \ s \ w)/'。 –
@Ferdinand好點,謝謝。 – stema