What is the best way to remove punctuation marks, symbols, diacritics, special characters?

前端 未结 2 1745
不知归路
不知归路 2021-01-11 09:30

I use these lines of code to remove all punctuation marks, symbols, etc as you can see them in the array,

$pattern_page = array(\"+\",\",\",\".\",\"-\",\"\'\         


        
相关标签:
2条回答
  • 2021-01-11 09:59

    Use classes:

    preg_replace('/[^[:alpha:]]/', '', $input);
    

    Would remove anything that's not considered a "character" by the currently set locale. If it's punctuation, you seek to eliminate, the class would be [:punct:].

    \W means "any non-word character" and is the opposite of \w which includes underscores (_).

    0 讨论(0)
  • 2021-01-11 10:15

    Depending on how greedy you'd like to be, you could do something like:

    $pg_url = preg_replace("/[^a-zA-Z 0-9]+/", " ", $pg_url);
    

    This will replace anything that isn't a letter, number or space.

    0 讨论(0)
提交回复
热议问题