RegEx表示不以点开头和/或结尾的匹配字符串

时间:2016-02-04 19:32:47

标签: regex regex-negation

我正在尝试编写一个RegEx来获取每个没有开始和/或以点(.)结尾的字符串。 Here是我正在研究的例子,但它不起作用,因为没有什么是匹配的。

// valid match would be
Alison
Alizon
Amada
Amanda
Ami

// not valid match wold be
Alison. // dot at end
Alizon. // dot at end
.Amada // dot at beggining
Amanda. // dot at end
Ami. // dot at end
.Ami. // dot at beggining and end

我也尝试过这个:^".*[^.]$但不起作用。

可以给我一些帮助吗?

注意:我会在MySQL查询中使用它,例如:SELECT * FROM reviews WHERE description REGEXP 'here_goes_the_RegEx'

2 个答案:

答案 0 :(得分:2)

你可以在没有正则表达式的情况下做到这一点:

SELECT * FROM reviews WHERE description NOT LIKE '.%' AND description NOT LIKE '%.'

根据逻辑将AND替换为OR。

答案 1 :(得分:0)

Try this Regex:

(^((?!.).)*[a-z]+[\w]+((?!.).)*$)

For more Information refer this Link

上第二次点击