php - 从字符串的开头删除一些特殊字符
问题描述
我想从字符串的开头删除特殊字符。
例如:我的字符串:
- - Testing
那么,应该是
Testing
我试过的
trim($string, '-');
但是,它不起作用。我需要做什么?
解决方案
如果您打算删除任何符号和空格,请使用
preg_replace('~^[\p{S}\p{P}\s]+~u', '', $s)
在这里,\p{S}
匹配任何符号,\p{P}
匹配任何正确的标点符号\s
并将匹配任何空格(由于u
标志,它将匹配任何 Unicode 空格)。
要删除任何非单词字符,请使用'~^\W+~'
(将删除非 ASCII 字母)或'~^\W+~u'
(将保持重音字符完整)模式。
如果您只打算在字符串开头删除空格和连字符,请使用
preg_replace('~^[\s-]+~', '', $s)
查看正则表达式演示
该^[\s-]+
模式匹配字符串开头的一个或多个空格或连字符。
一些变化:
'~^[ -]+~'
- 只会删除字符串开头的常规空格和连字符'~^[\h-]+~m'
- 将删除字符串每一行上的所有连字符和水平空格'~^[\h-]+~'
- 将仅删除第一行的所有连字符和水平空格
推荐阅读
- javascript - 我无法让 inputmask 与 vanilla JS 一起使用
- python - 将 spark Dataframe Column 可空性转换为 False 而不转换为 rdd
- python - Identity 运算符不能正确作用于伴随运算符
- python - 如何在 python 中捕获并显示准确的错误消息
- apache-spark - Dataproc 集群最多可并行运行 5 个作业,忽略可用资源
- c# - 尽管附加了令牌,它仍然返回 405Method Not Allowed 错误
- ios - 从子类访问 IBOutlet,outlet 无法连接到重复内容子类
- python - matplotlib 在 y 轴上的百分比符号
- java - 查询以根据在弹性搜索中使用的给定 CIDR 范围从 IP 地址字段中获取记录集
- python - 添加评论类视图