如何只过滤PHP字符串上的字符?

时间:2014-03-03 03:57:05

标签: php regex string filter

我有像这样的字符串

<?php

$str = "3451231 3123 Rotary-moulder";

?>

我需要一个仅过滤字符(字母)的函数

结果是“Rotary-moulder”

我一直在谷歌搜索这个脚本

<?php

$str = '06516161 065165161 ini adalah percobaan';
preg_match_all('!\d+!', $str, $matches);


$var = implode(' ', $matches[0]);

echo $var;

?>

多数人工作正常,结果只有数字。我怎样才能获得Only Alphabet Character?

我仍然不明白如何扭转这个功能。

任何人都可以帮助我?

我非常感谢你的回答。

2 个答案:

答案 0 :(得分:2)

尝试:

$string = preg_replace('/[^a-z]/i', '', $string);

修改

如果你想保持-试试这个:

$string = preg_replace('/[^a-z-]/i', '', $string);

答案 1 :(得分:1)

<?php
    $str = '06516161 065165161 ini adalah percobaan';
    preg_match_all('!\D+!', $str, $matches);


    $var = implode(' ', $matches[0]);

    echo $var;
?>

你必须在preg_match_all中用'D'替换小写字母'd'。 'D'用于任何非数字匹配。