[英]Replace a string under condition (Regex?)
我正在尋找搜索和替換的解決方案。 我需要在特定字符串之后添加一個空格,但只有在沒有空格時才需要。 正則表達式對我來說是先進的。 有人想幫我嗎?
例如
Lorem ipsum[something]abcdefg[/something]dolor sit amet
需要替換為
Lorem ipsum[something]abcdefg[/something] dolor sit amet
所以,我需要搜索[/something]
,如果后面沒有空格,則進行替換...
正則表達式可以是這樣的:
/(\[\/something\])(?!\s)/gmi
您可以測試它並在此處了解整個解釋:
https://regex101.com/r/pC4pQ3/1
如果你看到第一個被定位,因為不是空格,但第二個是相反的。
要在 PHP 中應用它,您必須使用preg_replace()
。 像這樣的東西:
$string = "Lorem ipsum[something]abcdefg[/something]dolor sit amet";
echo preg_replace("/(\[\/something\])(?!\s)/", "\1 ", $string);
// result: "Lorem ipsum[something]abcdefg[/something] dolor sit amet"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.