剥离Unicode?来自字符串php的连字符和空格

时间:2012-11-01 22:57:13

标签: php jquery html unicode

我试图使用jquery从选择列表中获取标签值,将其写入隐藏文本输入,然后在php模板中显示该值。 - (没有办法直接在数据中访问该字段,这是我的工作。)

所以我可以获取标签值,将其传递给隐藏和显示。但标签的格式如此“ - 最新消息” 我想删除空白和连字符/减号符号,这样我就留下了“最新消息”

通过尝试通常的功能而它们不工作它发生在我身上,当它没有工作时,这些可能是unicode字符。当我使用以下内容时:

$mycategory = preg_replace('/^\p{Z}+|\p{Z}+$/u', '', $mycategory);
$mycategory = htmlentities($mycategory, ENT_QUOTES, "UTF-8");
$mycategory = str_replace("-", "", $mycategory);

echo '<h1>'.$mycategory.'</h1>';

第1行我替换了前面的unicode空白区域。返回“ - 最新消息” 第2行:我将实体更改为html 第3行:我摆脱了实体。但这会返回“最新消息”

所以我无法摆脱修剪或preg_replace的最后一个空格。我不知道如何摆脱它。如果我将空白空间放在第三行的搜索词中,则会打破替换。

1 个答案:

答案 0 :(得分:1)

好,,, grrr..had打开php:)

 $str = '- Latest news !*#';
 echo preg_replace('/[^[:alnum:]\s]/','',$str);