트위터 게시물을 연결하려고합니다. 그러나 "# löövet"처럼 보이는 해시 태그는 필자가 원하는대로 필터를 얻지 못합니다. 외계인 앞에서 끊어집니다. 외국 문자는 허용되어야합니다.preg_replace가 특수 문자로 바꾸는 것을 방지하십시오.
누구나이 목적을 위해 정규식을 변경하는 방법을 알고 있습니까? 당신의 해시 태그가 없습니다 어떤 공간을 포함 할 경우
가//Hashtag
$tweet = preg_replace("/ +#([a-z0-9_]*)?/i", " <a href=\"http://twitter.com/tag/\\1\" target=\"_blank\">#\\1</a>", $tweet);
//Problem:
/*
* The function above does not match foreign characters as å/ä/ö
* Tag result example: tag = #löövet
* After preg_replace: tag = #l öövet
* Desired after preg_replace: tag = #löövet
*/
당신이 UTF-8 인코딩을 사용하는 경우가 ** 유 ** 패턴에 플래그가 작동하지 않을 수 있습니다 추가. 물론, 당신이 명시 적으로 악센트가없는 라틴 알파벳 (a-z 및 A-Z)을 나열 했으므로,이 경우에 모두 얻을 수있는 것입니다. 유니 코드 사용 가능 코드 사용에 대한 다른 해답을보십시오. –