PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式相关的知识,希望对你有一定的参考价值。
参考技术A在开发的过程中,经常会遇到需要给别人提供一个输入框,然后别人输入一些ID,或者关键字的东西,例如wordpress的后台的标签输入框:
这个就是只是判断英文状态下的逗号,要是有人不小心输入了中文状态下的逗号怎么办?小数点怎么办?
于是我就用正则写了一个表达式,把带有空格换行符之类的替换成逗号。
把提交的id带有空格换行符之类的替换成逗号,然后用explode函数切换成数组。
复制代码
代码如下:
$ids=$_POST["ID"];
$id=
preg_replace("/(\\n)|(\\s)|(\\t)|(\\\')|(\')|(,)/"
,\',\'
,$ids);
$topicids
=
explode(","
,$tids);
这个是增加了小数点的过滤。
复制代码
代码如下:
$ids
=
preg_replace("/(\\n)|(\\s)|(\\t)|(\\\')|(\')|(,)|(\\.)/",\',\',$ids);
OK,经过这样处理后,就不会有问题了。
提示:其实,小编感觉用JS在提交前就处理掉这个问题,是一个更好的选择。
Notepad++替换格式符号(如换行符Tab符等)
(前提是要选中 正则表达式模式)
查找目标 | 替换为 | 说明 |
---|---|---|
, | 在行尾加上逗号 | |
替换为空,即合并多行内容为一行 | ||
把 windows 下的换行符替换为 linux 下的换行符 | ||
把 替换为空,即把 windows 下的换行符替换为 Mac 下的换行符 | ||
, | 把逗号全部替换成换行 | |
去掉空行 | ||
1ss | 1 | 去掉 1 后的两个空格,其中一个 s 表示一个空格 |
1两个半角空格 | 1 | 可以直接在 1 后跟两个半角空格来匹配,跟上面 s 是一样的效果 |
在每行行首添加制表符,即四个半角空格的效果 |
版权声明:本文为CSDN博主「媛测」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lijing742180/java/article/details/85174564
Extended Search Mode
In extended mode, these escape sequences (a backslash followed by a single character and optional material) have special meaning, and will not be interpreted literally.
: the Line Feed control character LF (ASCII 0x0A)
: The Carriage Return control character CR (ASCII 0x0D)
: the TAB control character (ASCII 0x09)
: the NUL control character (ASCII 0x00)
: the literal backalash character (ASCII 0x05C)
: the binary representation of a byte, made of 8 digits which are either 1’s or 0’s. ?
o: the octal representation of a byte, made of 3 digits in the 0-7 range
d: the decimal representation of a byte, made of 3 digits in the 0-9 range
x: the hexadecimal representation of a byte, made of 2 digits in the 0-9, A-F/a-f range.
u: The hexadecimal representation of a two byte character, made of 4 digits in the 0-9, A-F/a-f range. In Unicode builds, finds a Unicode character (for instance, u2020 matches the ? char, in an UTF-8 encoded file). In ANSI builds, finds characters requiring two bytes, like in the Shift-JIS encoding. ?
?NOTE: While some of these Extended Search Mode escape sequences look like regular expression escape sequences, they are not identical. Ones marked with ? are different from or not available in regular expressions.
来源: https://npp-user-manual.org/docs/searching/#extended-search-mode
以上是关于PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式的主要内容,如果未能解决你的问题,请参考以下文章