检查字符串在PHP中是否不包含任何字母字符?

检查字符串在PHP中是否不包含任何字母字符?,php,regex,string,preg-replace,Php,Regex,String,Preg Replace,有没有办法确定字符串是否不包含任何字母字符 我正在考虑做一个正则表达式匹配。但是努力做到这一点 基本上,我想将“不包含任何字母字符的字符串”替换为null 希望我的问题清楚。任何帮助都将不胜感激。试试这个 $str = '1234'; $replace = "test"; $res = preg_replace('/^[^a-zA-Z]*$/',$replace,$str); var_dump($res); if (preg_match('/[A-Za-z]/', $m

有没有办法确定字符串是否不包含任何字母字符

我正在考虑做一个正则表达式匹配。但是努力做到这一点

基本上,我想将“不包含任何字母字符的字符串”替换为null

希望我的问题清楚。任何帮助都将不胜感激。

试试这个

$str     = '1234';
$replace = "test";

$res     =  preg_replace('/^[^a-zA-Z]*$/',$replace,$str);


var_dump($res);
if (preg_match('/[A-Za-z]/', $myString))
{
    echo 'Contains at least one character';
}

请尝试以下代码

它可能会帮助你

   $myString="abC123";

   if( preg_match('([a-zA-Z])', $myString) ) 
   { 
      echo('The string contains letters.');
   }
   else 
   {
      echo('The string contains no letters.');
   }

你的问题令人困惑。
因此,如果字符串中没有字母字符,则希望为其指定NULL,对吗? 您可以进行基本检查并更换它

if (!preg_match('/[A-Za-z]/', $str))
{
   $str=NULL;
}
如果$str没有任何字母,那么在此阶段它将变为空。
祝你好运

这就是我尝试过的。preg_replace(“/^[^a-zA-z]*$/”,“,$str)。我想知道它是否会成功。仅当字符串不包含任何字母时,我才想替换字符串。@user1518659:请检查我的回答否。如果它没有任何字母表,我想将其设为空。“abc123”、“abc”、“abc!@#”有效,但“123”、“@#$”无效请参阅我上面的代码,我已更新,它应该适用于您。