内容简介:翻译自:https://stackoverflow.com/questions/13299934/regex-to-remove-all-single-characters-from-a-string
我需要一个正则表达式来删除字符串中的所有单个字符,而不仅仅是单个字母或数字
字符串是:
“A Future Ft Casino Karate Chop ( Prod By Metro )”
它应该出现:
“Future Ft Casino Karate Chop Prod By Metro”
我目前使用的表达式(在 PHP 中)正确地删除单个’A’但保留单个'(‘和’)’
这是我正在使用的代码:
$string = preg_replace('/\b\w\b\s?/', '', $string);
试试这个:
(^| ).( |$)
分解:
1. (^| ) -> Beginning of line or space 2. . -> Any character 3. ( |$) -> Space or End of line
实际代码:
$string = preg_replace('/(^| ).( |$)/', '$1', $string);
注意:我不熟悉PHP正则表达式的工作原理,因此代码可能需要稍微调整,具体取决于实际的正则表达式需求的声明方式.
正如m.buettner所指出的,这里的代码中会有一个尾随的空格.需要一个修剪来清除它.
编辑:Arnis Juraga指出,这不会清除b c过滤掉b的多个单个字符.如果这是一个问题,请使用此正则表达式:
(^| ).(( ).)*( |$)
添加到中间的(().)*将查找任何字符后跟0的任何空格.不利的一面是,最终会出现一系列单个字符所在的双倍空格.
这意味着:
The a b c dog
会变成这样:
The dog
执行替换以获取单个字符后,您需要使用以下正则表达式来定位双空格,然后用单个空格替换
( ){2}
翻译自:https://stackoverflow.com/questions/13299934/regex-to-remove-all-single-characters-from-a-string
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 浅析正则表达式 元字符和普通字符
- 详解正则表达式 \v 元字符
- 详解正则表达式 \v 元字符
- 正则表达式模式匹配字符串基础知识
- 利用正则表达式将字符串分组示例代码
- 正则表达式 \D 元字符(等价于"[^0-9]")
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Python编程快速上手
Albert Sweigart / 王海鹏 / 人民邮电出版社 / 2016-7-1 / 69.00元
如今,人们面临的大多数任务都可以通过编写计算机软件来完成。Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。通过Python编程,我们能够解决现实生活中的很多任务。 本书是一本面向实践的Python编程实用指南。本书的目的,不仅是介绍Python语言的基础知识,而且还通过项目实践教会读者如何应用这些知识和技能。本书的首部分介绍了基本Python编程概念,第二部分介绍了一些不......一起来看看 《Python编程快速上手》 这本书的介绍吧!