首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP:正则表达式从字符串替换除字母数字字符以外的所有内容

PHP:正则表达式替换非字母数字字符

正则表达式(Regular Expression)是一种强大的文本处理工具,可以用于在字符串中查找和替换特定模式。在 PHP 中,使用 preg_replace 函数结合正则表达式,可以实现从字符串中替换掉非字母数字字符。

代码语言:php
复制
<?php
// 定义一个正则表达式,匹配非字母数字字符
$pattern = '/[^a-zA-Z0-9]/';

// 使用 preg_replace 函数将字符串中的非字母数字字符替换为空格
$str = 'Hello, World! 123';
$result = preg_replace($pattern, ' ', $str);

// 输出替换后的结果
echo $result;
?>

代码解释

  1. 定义一个正则表达式 pattern,用于匹配非字母数字字符。
  2. 使用 preg_replace 函数将字符串中的非字母数字字符替换为空格。
  3. 运行代码后,输出结果为:Hello, World! 123,其中非字母数字字符已被替换为空格。

需要注意的是,正则表达式方法在处理复杂的字符串时可能会消耗较多的时间和系统资源。如果需要替换的字符串较为简单,使用字符串替换函数或许更加高效。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

PHP中正则使用

正则表达式,作为一种快速、便捷处理字符串工具,在各种编程语言中都有着广泛用途,通过在PHP一些使用,下面记录一下关于PHP中正则使用一些技巧。...正则表达式: 用于描述字符排列和匹配模式一种语法规则。它主要用于字符串模式分割、匹配、查找及替换操作。...” \d     匹配一个数字;等价于[0-9] \D     匹配除数字以外任何一个字符;等价于[^0-9] \w     匹配一个英文字母数字或下划线;等价于[0-9a-zA-Z_] \W    ...匹配英文字母数字和下划线以外任何一个字符;等价于[^0-9a-zA-Z_] \s     匹配一个空白字符;等价于[\f\t\v] \S     匹配空白字符以外任何一个字符;等价于[^\f\t\...匹配到最近字符串 e     -将替换字符串作为表达使用 格式:/apple/i匹配“apple”或“Apple”等,忽略大小写。

3.7K30

什么是正则表达式?Joi文章

正则表达式通常被用来检索、替换那些符合某个模式(规则)文本 ---- ②我说法: 编程中需要查找某些复杂规则中字符串,而正则表达式就是用于描述这些规则语法 比如你要正一串代码中查找出某些字符,那么正则表达式就是来帮你你找他们...匹配换行符以为所有字符 \w 匹配字母数字或下划线或汉字 \s 匹配任意空白符 \d 匹配数字 \b 匹配单词开始或结束 ^ 匹配字符串开始 $ 匹配字符串结束 字符转义 如果你想匹配....中你不想匹配英文字符 你就可以用反义W大写 \W 匹配任意不是字母数字,下划线,汉字字符 \S 匹配任意不是空白符字符 \D 匹配任意非数字字符 \B 匹配不是单词开头或结束位置...[^x] 匹配除了x以外任意字符 [^abc] 匹配除了abc这几个字母以外任意字符 替换 会写正则了,我们目的就是来学网球(嘻嘻) 所以我们就要替换 举个例子 我是例子呀abc:嘿嘿 我们想把嘿嘿改成哈哈...,怎么用正则改呢 表达式:abc\w+ 这里就匹配到abc:嘿嘿 然后替换为abc:哈哈 这个字符串就被我们替换成 我是例子呀abc:哈哈 懂了没?

66110
  • PHP正则表达式笔记与实例详解

    笔记: 一、正则表达式介绍:     正则表达式是用于描述字符排列和匹配模式一种语法规则。它主要用于字符串模式分割、匹配、查找及替换操作。     1....表示最小匹配所有字符(拒绝贪婪匹配) d 匹配一个数字;等价于[0-9] D 匹配除数字以外任何一个字符;等价于 w 匹配一个英文字母数字或下划线;等价于[0-9a-zA-Z_] W 匹配英文字母...、数字和下划线以外任何一个字符;等价于 s 匹配一个空白字符;等价于[fnrtv] S 匹配空白字符以外任何一个字符;等价于 f 匹配一个换页符等价于 x0c 或 cL n 匹配一个换行符;等价于..."^[A-Za-z0-9]+$"  //由数字和26个英文字母组成字符串 "^w+$"  //由数字、26个英文字母或者下划线组成字符串 "^[w-]+(....非贪婪模式尽可能少匹配所搜索字符串,而默认 贪婪模式则尽可能多匹配所搜索字符串。 . 匹配 "n" 之外任何单个字符

    1.1K00

    PHP正则表达式笔记与实例详解

    笔记: 一、正则表达式介绍: 正则表达式是用于描述字符排列和匹配模式一种语法规则。它主要用于字符串模式分割、匹配、查找及替换操作。 1....a-zA-Z0-9] 表示任意一位大小字母数字 [^] 表示中括号内原子之外任何字符 是[]取反 例如:[^0-9] 表示任意一位非数字字符 [^a-z] 表示任意一位非小写字母 {m}...表示任意一个换行符之外字符 常用组合: .*? 表示最小匹配所有字符(拒绝贪婪匹配) 3....普通转义字符: \d 匹配一个数字;等价于[0-9] \D 匹配除数字以外任何一个字符;等价于[^0-9] \w 匹配一个英文字母数字或下划线;等价于[0-9a-zA-Z_] \W 匹配英文字母数字和下划线以外任何一个字符...“^[A-Za-z0-9]+$”  //由数字和26个英文字母组成字符串 “^\w+$”  //由数字、26个英文字母或者下划线组成字符串 “^[\w-]+(\.

    2.8K40

    Python教程之正则表达式(提高篇)

    但我们知道正则表达式所要匹配内容千姿百态,除了我们最常见数字以外还有字母以及特殊符号,同时在一篇将要匹配文本中,符合要求匹配对象可能多个。...我们规定:在正则表达式使用过程中,使用反斜杠‘\’加字母匹配常见字符,具体匹配规则如下图所示: 缩写字符分类 表示 \d 0到9任何数字 \D 0到9以外任何字符 \w 任何数字字母、下划线字符...\W 除数字 字母 下划线以外任何字符 \s 空格、制表符、换行符 \S 空格、制表符、换行符以外任何字符 同时在正则表达式使用过程中,re模块中还有另外一种读取文本匹配内容方法:findall...建立自己字符分类 在使用正则表达式时候我们通常会需要使用这些匹配字符以外东西,如我们特定匹配某一个字母数字。...Regexsub()方法将传入两个字符串参数,第一个参数是一个字符串,是用于替换发现匹配,第二个参数是将要被匹配文本对象,使用该方法可以将匹配到内容替换掉。

    66410

    常用正则表达式

    匹配回车(\r)、换行(\n) 、行分隔符(\u2028) 和 段分隔符(\u2029) 以外所有字符 | 表示或者,即cat|dog表示匹配cat或dog \d 匹配0-9之间任意一个数字,相当于...[0-9] \d+ 匹配一个或多个连续数字 \D 匹配0-9以外任意字符,相当于[^0-9] \w 匹配任意字母数字和下划线,类似但不等价于[A-Za-z0-9_] \w+ 匹配一次或多次任意字母...、数字和下划线、类似但不等价于[A-Za-z0-9_] \W 匹配字母数字和下划线以外字符,类似但不等价于[^A-Za-z0-9_] \W+ 匹配一次或多次字母数字和下划线以外字符,类似但不等价于...[eE][-+](\d+)$/, "$2"); 执行结果 提取字符串字母正则表达式会将字符串中非字母字符替换成空字符 "Aa1Bb2Cc3Dd4Ee5Ff6".replace(/[^a-z...]+/ig, ""); "Aa1Bb2Cc3Dd4Ee5Ff6".replace(new RegExp("[^a-z]+", "ig"), ""); 执行结果 提取字符串数字正则表达式会将字符串中非数字字符替换成空字符

    99220

    爬虫必学知识之正则表达式上篇

    什么是正则表达式正则表达式就是一个特殊字符序列,可以用于检测一个字符串是否与我们所设定字符串相匹配。功能有快速检索文本和快速替换一些文本操作。...参数如下: pattern:正则表达式 string:要进行匹配字符串 flags:匹配模式 结果是一个匹配内容列表 ?...'\d' : 这个表示匹配单个0-9数字 '\D' : 与\d相反,匹配数字以外内容 用代码来感受下: import re#这个库是用来使用正则表达式 a='sg+sga5g45gaae3f23hgt13...b到n字符 匹配汉字:[\u4E00-\u9FA5] 概括字符集: 用一个 \ + 字母 表示一系列字符字符,只能匹配单个字符,常用的如下 \w:匹配数字字符「不包括&符号」只匹配单词,数字和下划线...:匹配换行符之外其他字符 还有前面的\d和\D也是 有个小技巧:如果想要匹配所有字符,就可以把上面的两个相反合并起来就可以了。

    1.1K60

    正则表达式教程

    正则表达式入门 概念 字符是计算机软件处理文字时最基本单位,可能是字母数字,标点符号,空格,换行符,汉字等等。字符串是0个或更多个字符序列。文本也就是文字,字符串。...正则表达式是对字符串操作一种逻辑公式,就是用事先定义好一些特定字符、及这些特定字符组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串一种过滤逻辑。...里所有的h标签,这种写法考虑到了H标签大小写 PS.在w3c规范里还是推荐所有html标签都必须是小写字母所有属性都使用双引号包裹 排除型匹配 gr[^ae]y 匹配除了grey和gray以外所有单词...匹配换行符以外任意字符 \w 匹配字母数字或下划线或汉字 \W 匹配任意不是字母数字或下划线或汉字字符 \s 匹配任意空白符 \S 匹配任意非空白符 \d 匹配数字 \D 匹配非数字 \b...> 结果好像不是我们想要,看来分组命名在PHP正则替换里没有作用,以后使用时候一定要注意! 断言 断言意思就是预先判断匹配字符位置,以达到更精确匹配。

    2.5K20

    正则表达式教程

    正则表达式入门 概念 字符是计算机软件处理文字时最基本单位,可能是字母数字,标点符号,空格,换行符,汉字等等。字符串是0个或更多个字符序列。文本也就是文字,字符串。...正则表达式是对字符串操作一种逻辑公式,就是用事先定义好一些特定字符、及这些特定字符组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串一种过滤逻辑。...里所有的h标签,这种写法考虑到了H标签大小写 PS.在w3c规范里还是推荐所有html标签都必须是小写字母所有属性都使用双引号包裹 排除型匹配 gr[^ae]y 匹配除了grey和gray以外所有单词...匹配换行符以外任意字符 \w 匹配字母数字或下划线或汉字 \W 匹配任意不是字母数字或下划线或汉字字符 \s 匹配任意空白符 \S 匹配任意非空白符 \d 匹配数字 \D 匹配非数字 \b...> 结果好像不是我们想要,看来分组命名在PHP正则替换里没有作用,以后使用时候一定要注意! 断言 断言意思就是预先判断匹配字符位置,以达到更精确匹配。

    1.9K30

    十分钟学会正则表达式

    这俩函数,不仅可以替换字符串,还可以替换数组!在替换数组时候,pre_filter会过滤掉没有匹配到内容,而pre_replace不会,这就是他俩唯一区别。...原子 正则表达式中最小匹配单位,其实就是字符串字符。主要分为两大类: 可见原子: 肉眼能够看见字符。 标点符号。例如:”_ ? . ;,“等等 英文字母数字。...和计算机语言中含义是一样:或者 [] 匹配方括号中任意一个原子。 [^] 配配方括号之外任意字符串。 . 匹配\n之外任何单个字符。要匹配包括\n在内任何字符,请使用象[....等同于[^\f\n\r\t\v] \w 匹配任意数字字母或下划线。既[0-9a-zA-Z_] \W 匹配任意非数字字母或下划线。即[^0-9a-zA-Z_] 量词 表示某一个原子连续出现数量。...(包括空格和按tab键输出制表符) s让元字符.匹配包括换行符在内所有字符。 e preg_replace()在替换字符串中对逆向引用作正常替换

    85150

    【Python之正则表达式与JSON】

    Python之正则表达式与JSON 1、定义 正则表达式是一个特殊字符序列,一个字符串是否与我们所设定这样字符序列,相匹配。...```python import re a = ‘C0C++4C#6Python1Javascript’ r = re.findall('\w',a) #正则表达式中用“\w”匹配所有数字字母...print(a) "\w" 单词字符集,可以匹配大小写字母数字和_ 等价于[A-Za-z0-9_] “\W” 非单词字符集 & “\s” 空白字符 包括空格,\t,\n,\r “\S” 匹配非空白字符...匹配\n以外所有字符 数量词 import re a ='python 1111java678php' r = re.findall('[a-z]{3}',a) #匹配连续a-z三个字符...C# r = re.sub(‘C#’,convert,lanuage) print(r) import re s = 'ABC3721D86' r = re.match('\d',s) #字符串字母开始匹配

    32310

    我攻克技术难题:正则表达式

    ​前言 JS正则表达式作为一种强大字符串处理工具,它可以匹配特定字符串模式,并进行相关操作,如查找、替换、截取等。...对于正则表达式我们不可能去死记硬背所有的,但是我们需要学习概念和语法,做到能够看懂正则表达式和编写简单正则表达式实现字符查找和检测即可。...⛳应用场景 1.表单验证(匹配) 2.过滤敏感词(替换) 3.字符串中提取我们想要部分(提取) var str = "内容!!!!...(点)代表匹配换行符之外任何单个字符(了解) (3)预定义 指的是某些常见模式简写模式 预定类 说明 \d 匹配0-9之间任一数字,相当于[0-9] \D 匹配0-9以外字符,相当于[0-9]...\w 匹配任意字母数字和下划线,相当于[A-Za-z0-9] \W 所有字母数字和下划线以外字符,相当于[^A-Za-z0-9] \s 匹配空格(包括换行符、制表符、空格符等),相当于[\t

    13400

    Perl正则表达式详解

    /d 删除找到但是未替换字符串 /s 合并压缩重复替换字符 /r 返回转换字符串,原字符串保持不变 元符号表 符号 原子性 含义 … 可变 使下一个字母数字字符为元字符,或者(可能)使下一个非字母数字字符不作为元字符...是 匹配一个字符(正常情况下换行符以外) $ 否 如果在字符串末尾(或者可能在某个换行符前面)true 正则表达式量词 最大 最小 占有 允许范围 {MIN,MAX} {MIN,MAX}?...FF) \F — \g{GROUP} 是 匹配命名或编号捕获组 \G 否 在前一个m//g匹配结束位置时为true \h 是 匹配所有水平制表符 \H 是 匹配水平制表符以外所有字符 \k 是...(不是整个字符串为大写) \U — 转为大写(而不是首字母大写),直到\E结束 \v 是 匹配任何垂直制表符 \V 是 匹配垂直空白符以外任何字符 \w 是 匹配任何”单词”字符字母数字,组合标记和连接符号...例如字符串”aa1122ccbb”,用正则表达式a.*c去匹配这个字符串,其中.*将直接第二个字母a开始匹配到最结尾b,因为第二个字母a开始到最后一个字母b都符合.*匹配模式。

    81830

    PHP核心技术与最佳实践 读书笔记 第三章 正则表达式基础与应用

    第三章 正则表达式基础与应用 3.1 认识正则表达式 正则表达式就是用某种模式去匹配一类字符串公式。...分隔符:是除了字母数字,反斜线以及空白字符意外任何字符(如/ !...点号.是元字符,匹配除了换行符以外任意字符。 *同样是元字符,它指定“*”前面的内容可以连续重复使用任意次以使整个表达式得到匹配。...匹配换行符以外任何字符 \w 匹配字母数字或下划线或汉字 \s 匹配任意空白符 \d 匹配数字 \b 匹配单词开始或结束 ^ 匹配字符串开始 $ 匹配字符串结束 - 表示范围 [] 匹配括号中任意一个字符...反义 常用反义 描述 \W 匹配任意不是字母数字,下划线,汉子字符 \S 匹配任意不是空白符字符 \D 匹配任意非数字字符 \B 匹配不是单词开头或者结束位置 [^x] 匹配除了x以外任意字符

    63310

    正则表达式快速入门

    在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式文本,常见正则字符如下表所示。 元字符 描述 \ 转义符。例如,"\\"匹配\。"\n"匹配换行符。...匹配除了换行符以外任意一个字符 {m} 匹配前一个内容,重复次数是m次 {m, } 匹配前一个内容,重复次数大于等于m次 {m, n} 匹配前一个内容,重复次数m次到n次 [] 匹配方括号中所包含任意一个字符...,例如[abc] [a-z] 字符范围,所有小写字母字符。...[^] 匹配方括号中原子以外任意字符 \b 匹配单词边界 \B 匹配单词边界意外部分 \d 匹配一个数字字符。 \D 匹配一个非数字字符。...; 转义符号行不通,一个一个来排队; 实在多得排不下,横杠请来帮个忙; ([1-5]) 尖头放进中括号,反义定义威力大; ([^a]指"a"外任意字符 ) 1竖作用可不小,两边正则互替换

    1.3K50

    正则表达式学习笔记

    正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些匹配某个模式文本。...简单来说,正则表达式就是做了这么一个事情:制定一个规则,而后根据规则去文本中寻找符合规则字符串。 它可以从一个基础字符串中根据一定匹配模式替换文本中字符串、验证表单、提取字符串等等。...匹配换行符以外任意字符 \w 匹配字母数字或下划线或汉字 \d 匹配数字 \s 匹配任意空白符 \b 匹配单词开始或结束 ^ 匹配字符串开始 $ 匹配字符串结束 看到这些,可能会感到一头雾水...,现在还是让我们通过例子来进行说明,现在我们有一个正则表达式 m.n,它表示规则是,先匹配 m,然后匹配换行符以外任意字符,再匹配 n。...比如想查找除了数字以外,其它任意字符都行情况,这时需要用到反义: 代码 描述 \W 匹配任意不是字母数字,下划线,汉字字符 \S 匹配任意不是空白符字符 \D 匹配任意非数字字符 \B 匹配不是单词开头或结束位置

    42520

    Python自动化测试-正则表达式解析

    正则表达式说明 1.简介 正则表达式(regular expression)是一种特殊字符串模式(pattern),用于匹配一组字符串,可以用来检查一个串是否含有某种子串,将匹配子串替换或者某个串中取出符合某个条件子串等...查找与替换: 判断给定字符串中是否包含满足正则表达式所指定匹配规则子串,如查找一段文本中所包含IP地址。另外,还可以对查找到子串进行内容替换。...大多数字符都将简单地匹配它们自身值,它们被称为普通字符,如数字(0-9),字母(a-z, A-Z)等,除了特殊元字符之外所有字符都是普通字符。 ‍ 代码 说明 ....匹配换行符以外任意字符 \ 将下一个字符标记为一个特殊字符‍ \w 匹配字母,数字,下划线或汉字 \s 匹配任意空白符 \d 匹配数字,等价于[0-9] \b 匹配单词开始或结束‍ ^ 匹配字符串开始...\B 匹配不是单词开头或结束位置 [^x] 匹配除了x以外任意字符 [^abc] 匹配除了abc字母以外任意字符 3.字符次数匹配 贪婪(贪心) ,如"*"字符 贪婪量词会首先匹配整个字符串

    94630

    正则表达式详解

    正则表达式定义   正则表达式(regular expression)描述了一种字符串匹配模式,可以用来检查一个串是否含有某种子串、将匹配子串做替换或者某个串中取出符合某个条件子串等。...下面的字符类匹配小写字母 (a-z) 或数字以外任何字符: /[^a-z0-9]/ 必须在字符“开头”键入尖号 (^) 字符以表示反转。...e   如果设定了此修正符,preg_replace() 在替换字符串中对逆向引用作正常替换,将其作为 PHP 代码求值,并用其结果来替换所搜索字符串。   ...最后,字符"+"与 {1,}是相等,表示“1个或多个前面的内容”,所以上面的4个例子可以写成: ^[a-zA-Z0-9_]+$ //所有包含一个以上字母数字或下划线字符串 ^[0-9]+$...e: 如果设定了此修正符,preg_replace() 在替换字符串中对逆向引用作正常替换,将其作为 PHP 代码求值,并用其结果来替换所搜索字符串

    1.4K10

    Python自动化测试-正则表达式解析

    正则表达式说明 1.简介 正则表达式(regular expression)是一种特殊字符串模式(pattern),用于匹配一组字符串,可以用来检查一个串是否含有某种子串,将匹配子串替换或者某个串中取出符合某个条件子串等...查找与替换: 判断给定字符串中是否包含满足正则表达式所指定匹配规则子串,如查找一段文本中所包含IP地址。另外,还可以对查找到子串进行内容替换。...大多数字符都将简单地匹配它们自身值,它们被称为普通字符,如数字(0-9),字母(a-z, A-Z)等,除了特殊元字符之外所有字符都是普通字符。 ‍ 代码 说明 ....匹配换行符以外任意字符 \ 将下一个字符标记为一个特殊字符‍ \w 匹配字母,数字,下划线或汉字 \s 匹配任意空白符 \d 匹配数字,等价于[0-9] \b 匹配单词开始或结束‍ ^ 匹配字符串开始...\B 匹配不是单词开头或结束位置 [^x] 匹配除了x以外任意字符 [^abc] 匹配除了abc字母以外任意字符 3.字符次数匹配 贪婪(贪心) ,如"*"字符 贪婪量词会首先匹配整个字符串

    1.1K30

    JavaScript 正则表达式入门教程

    \d\w\s等,详见附表 var reg=/./;// .表示换行符以外任一字符 var reg=/\d/;// \d表示0-9数字 ... 3、字符转义   如果需要查找元字符本身,则需要在元字符之前加...d] 除数字以外任意字符 var reg=/[^abc]/;//匹配一个不是abc字符,即abc以外任一字符 9、后向引用   使用()分组匹配子表达式,将自动拥有一个分组编号,可用于后续重复引用...] [^] 特殊 负值字符串,如[^abc]abc以外任何字符 {} 特殊 限定次数 ^ 位置 匹配字符串开始 $ 位置 匹配字符串结束 \b 位置 单词开头或结尾,也就是单词分界处 * 量词...匹配 匹配换行符以外任意字符 \d 匹配 匹配一个数字字符,等价于[0-9] \w 匹配 匹配字母数字或下划线或汉字,只考虑英文情况下等价于[a-zA-Z0-9_] \s 匹配 匹配任意空白符...() 替换:stringObject.replace(regexp/str,str/function); 该方法用于在字符串中使用一些字符替换另一些字符,或者替换一个与正则表达式匹配字符串;默认只替换第一个匹配字符

    1.3K30
    领券