我有一列为col1和col2:
col1 col2 is_demo is_test_demo
Demo test demo true true
test Demo test true true
project Demo demo true false
app demo test true false
我用2个正则表达式创建了2列,它们同时在col1或col2-中搜索is_demo(带有(?)Demo 术语)和is_test_demo(带有(?i)test演示)词)
所需结果:
col1 col2
Demo test demo
project Demo demo
app demo test
基本上我只想仅删除那些只有测试演示的数据 任何人都可以建议我在哪里错了,以及如何获得结果
代码尝试: 添加了2个正则表达式列-
is_demo-
col1.like("(?i)demo") or col2.like("(?i)demo")
is_test_demo-
col1.like("(?i)test demo") or col2.like("(?i)test demo")
,我正在尝试is_demo和not(is_test_demo) 但它不起作用。
任何人都可以帮助我获取包含的正则表达式 无论其演示在哪里,而不是(测试演示)
答案 0 :(得分:1)
如果您想使用正则表达式,我认为您可以使用rlike。要匹配演示,但如果字符串包含test_demo则不匹配,则可以使用负前行(?!
断言右边的内容不是测试单词边界之间的演示,以防止成为较大单词的一部分:
(?i)^(?!.*Test Demo).*\bdemo\b.*$