php - 正则表达式仅选择一个单词而不是包含这些字母的单词
问题描述
用户输入"California city ca"
如果在输入中找到状态,则像这样保存状态
$state_code = find_state_code_input($full_location); //$state_code = "ca"
我有以下函数,它找到模式的第一个匹配项并将其替换为其他值
function str_replace_first($find, $replaceTo, $content) {
$find = '/'.preg_quote($find, '/').'/';
return preg_replace($find, $replaceTo, $content, 1);
}
如果发现状态,我将其从原始完整字符串中删除
if (!empty($state_code))
$full_location = str_replace_first($state_code, "", $full_location);
//$full_location = "lifornia city ca"
但是输出是"lifornia city ca"
我如何才能做到这一点,以便只"ca"
删除单词而不删除包含这些字母的其他单词?即使在只有用户输入的情况下,"ca"
我对正则表达式的经验也没有那么一些帮助,我们将不胜感激
解决方案
推荐阅读
- python - 查找列表中的最大数量
- server - 获取路由器配置页面而不是我的网站主页
- url - 更新记录后如何返回上一页?
- npm - 使用“npm install”时出现错误“无法读取未定义的属性“匹配””
- yaml - 在 azure Devops 中创建 Yaml 管道时出现问题
- ios - 如何在objc中使非指针类型属性为空
- c# - 在 .net core 2.1 webapi 应用程序上,是否可以配置 NLog 而无需使用 Main 方法或 Startup.cs 中的任何方法进行配置?
- python - Python Timedelta[M] 添加不完整的天数
- amazon-dynamodb - 读取 DynamoDB 中的最新记录
- android - 未来建造者
(脏,状态:_FutureBuilderState #7140d) 在 null 上调用了 getter 'isEmpty'