正则表达式 - 单引号,不带逗号

时间:2015-07-13 19:30:44

标签: regex

我需要一个正则表达式来查找单引号,它在前面或后面都没有逗号。单引号也不应该是字符串中的第一个字符或最后一个字符,并且每边应该有一个字母数字字符

示例"简的书"会检测到"'苹果'橙子'"

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:0)

您可以将此正则表达式用于外观:

(?<=[a-zA-Z0-9])'(?=[a-zA-Z0-9])

RegEx Demo

答案 1 :(得分:0)

类似的东西:

(?<=[A-Za-z0-9])\'(?=[A-Za-z0-9])

应该为您提供支持积极前瞻和积极外观的语言的匹配(如果我没记错的话,JavaScript只支持前瞻)。我没有测试上面的内容,但我不确定你是否还需要逃避单引号......

答案 2 :(得分:0)

您需要适合您语言的变体:

.+'[^,]+.*

'找到一个单引号。您通常不需要转义单个引号。

[^,]允许任何字符,但逗号和+表示您需要至少一个此类字符

.*说你可以拥有任意数量的任意角色,所以把它放在你关心的前后说你的表达可以出现在字符串的任何地方。 .+表示您必须至少有一个字符而不是逗号。

请注意,我正在做一些假设,比如你要在字符串中只找到一个'。另外我假设你不关心,,除了'之后。如果不是这样,您需要更具体地了解您的要求。