对regexp有点新意,并寻求一些帮助理解某些功能。我目前正在尝试选择一些数据集,这些数据集以一个单词开头,后跟一个空格,然后是几个可能的单词。regexp_like用于选择属性字符串中包含多个不同单词的行
例1: 我基本上希望选择这样的产品1绿色产品1红,产品1蓝(绿,红或蓝基本),但没有数据: XYZ产品1,产品1黑,产品1白,产品1垃圾红色。
我曾尝试以下查询没有太大的成功:
Where regexp_like(item, 'Product1 [green | red | blue]');
Where regexp_like(item, 'Product1 [green, red, blue]');
Where regexp_like(item, '^Product1 [green, red, blue]');
可以想像,没有任何人知道的方式我也可以实现一个“AND”,例如选择其中包含单词绿色项目和红色在相同的属性。
例2: 类似的情况,但在尝试了标点符号
Where regexp_like (job, 'Commerce [[:punct:]] .*');
与此查询我期待选择具有 商务部的工作后,一个字匹配 - 测试 商务部:ABCDEFG
这些查询没有按照我预期的那样工作,我也无法弄清楚原因。我假设我误解了这些正则表达式的构造。
任何帮助/解释将不胜感激!
感谢您的帮助!不会允许像'Product1xasdasdgreen'这样的组合(因为任何字符符号)?你能否解释一下这将如何考虑“单词”是不同的(例如:产品1绿色/红色/蓝色)。谢谢! –
user1523257
2012-08-15 11:14:40
显然,我在添加第二个示例的同时编写了您的评论 - 请看看它。我不明白你的意思是......“这个词”是不同的“。请编辑您的帖子并添加其他应该或不应该匹配的示例。谢谢。 – 2012-08-15 12:07:04
@ user1523257 - 之前没有注意到关于AND逻辑的查询,所以在我的答案结尾添加了这个。 – 2012-08-15 16:05:04