Php 如何仅在此字符串上选择第一个单词

Php 如何仅在此字符串上选择第一个单词,php,select,filter,Php,Select,Filter,我有一段代码正在运行并返回一个位置变量。 如何使它只接受变量的第一个字? 目前它正在返回,例如“因弗内斯,高地” 我希望它只返回“因弗内斯” 您可以使用正则表达式选择字符串的第一个字母数字字符 例如: $firstword = preg_replace('/^([\d\w]+).*?$/', '$1', 'Inverness, Highland'); 您可以在此处看到正则表达式的作用:您可以使用: 您还可以使用仅获取字符串的第一个单词。请注意,我包含了一个空格和一个逗号作为可能的分隔符 $fi

我有一段代码正在运行并返回一个位置变量。 如何使它只接受变量的第一个字? 目前它正在返回,例如“因弗内斯,高地” 我希望它只返回“因弗内斯”


您可以使用正则表达式选择字符串的第一个字母数字字符

例如:

$firstword = preg_replace('/^([\d\w]+).*?$/', '$1', 'Inverness, Highland');
您可以在此处看到正则表达式的作用:

您可以使用:

您还可以使用仅获取字符串的第一个单词。请注意,我包含了一个空格和一个逗号作为可能的分隔符

$firstWord = strtok('Inverness, Highland', ' ,');

嘿,杰罗-谢谢你的回复。我不知道我将如何用我发布的代码实现这一点,我的知识甚至包括剪切粘贴的尝试和错误!他知道\d是冗余的(已经被\w覆盖,因此该类不是必需的),并且\w可能会导致umlauts等出现问题。。请参阅演示。您需要养成帮助您解决问题的习惯。您将获得积分,并鼓励其他人帮助您。很高兴能为您提供帮助!这只在分隔符是逗号的情况下才有效。True@ErikKalkoken,但这就是OP给我们的全部内容。我的水晶球在商店里。¯\_(ツ)_/“我很想知道你为什么在这篇文章中又回到了德语,我编辑了一篇以英语为基础的参考文献,杰伊·布兰查德的也是一个误会。我又把它改成了英语参考文献。
$all_locations = apply_filters( 
    "adverts_tpl_single_location", 
    esc_html( get_post_meta( $post_id, "adverts_location", true ) ), 
    $post_id );
$locations = explode(',', $all_locations); // since the list is comma separated
echo $locations[0]; // should be 'Inverness' 
$firstWord = strtok('Inverness, Highland', ' ,');