php - 删除某些字符串之前的空格
问题描述
我可以想到“foreach 字符串替换”的方法,但觉得正则表达式替换方法会更快、更优雅,不幸的是,正则表达式不是我最擅长的。
我想要这样的字符串
23 AB 5400 DE 68 RG
并将其变成
23AB 5400DE 68RG
数字和后面的字母之间的空格数通常是一个,但可能是可变的。
我有这个例子,它正在寻找组但是我如何摆脱替换中的空格?
https://regex101.com/r/ODhpQM/2
这是我尝试生成的代码
$re = '/(\d+ +)(AB|DE|RG|DU)/m';
$str = '23 AB 5400 DE 68 RG
33 DU 88 DE 8723 AB
55 RG 76 AB 92 DE';
$subst = '\\1\\2';
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is ".$result;
解决方案
尝试正则表达式:(\d+) +(AB|DE|RG|DU)
推荐阅读
- npm - npm 未检测到 johnny-5 库
- c# - failed to update database because database is read-only
- android - How to load image into layer-item with glide
- php - Laravel authorizing actions using Policies via Blade Templates
- sql-server - SQL Server CREATE AGGREGATE logic error
- spring-boot - thymeleaf-spring4:jar 找不到工件 - gradle intelijj
- c++ - c++ 如果检查不能正常工作
- javascript - objectStore.delete() 在 IndexedDB 上无法正常工作
- c++ - 我想确认我对变量作用域的理解在 C++ 中是正确的
- api - 使用 KONG 进行 API 身份验证和 JWT 令牌验证