[英]How can I remove leading and trailing non-alphanumeric characters
我希望從字符串中“修剪”非字母數字,類似於trim()
處理空格的方式。
幫我將#str|ng#
轉換為str|ng
。
我可以刪除尾隨的非字母數字:
$string = preg_replace('/\W+$/', '', $string); // converts `#str|ng#` to `#str|ng`
並以:
$string = preg_replace('/^\W+/', '', $string); // converts `#str|ng#` to `str|ng#`
但是我怎樣才能同時完成這兩個任務呢?
嘗試使用像這樣的^\\W+|\\W+$
模式:
$string = preg_replace('/^\W+|\W+$/', '', $string);
這將替換出現在字符串開頭或結尾的任何非單詞字符(請注意,這不包括下划線)。 的|
是一個交替,它將匹配與左側模式或右側模式匹配的任何字符串。
如果您還需要刪除下划線,請使用這樣的字符類:
$string = preg_replace('/^[\W_]+|[\W_]+$/', '', $string);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.