在下面的正则表达式中,"(?i)"和"?@"是什么意思?
(?i)<.*?@(?P<domain>\w+\.\w+)(?=>)
Run Code Online (Sandbox Code Playgroud)
我知道 "?" 表示零或一,我设置不区分大小写.
此正则表达式从mailto字段中的电子邮件地址捕获域,但不包括@符号.它是从SPLUNK 6.0.2中生成的erex命令
试图让re.split正常工作.输入="a1 a2 a3,a4,a5"
expecting output = ['a1','a2','a3','a4','a5']
s = re.split(',|\s', "a1 a2 a3, a4,a5")
getting output = ['a1','a2','a3',' ','a4','a5']
Run Code Online (Sandbox Code Playgroud) 我是正则表达式的新手,正如我所研究的,* 匹配零个或多个,+ 匹配一个或多个,所以我开始测试这个:
<?php
preg_match("/a/", 'bbba',$m);
preg_match("/a*/", 'bbba',$o);
preg_match("/a+/", 'bbba',$p);
echo '<pre>';
var_dump($m);
var_dump($o);
var_dump($p);
echo '</pre>';
?>
Run Code Online (Sandbox Code Playgroud)
但结果是 * 没有匹配任何东西并在字母 a 存在时返回空:
array(1) {
[0]=>
string(1) "a"
}
array(1) {
[0]=>
string(0) ""
}
array(1) {
[0]=>
string(1) "a"
}
Run Code Online (Sandbox Code Playgroud)
所以我想念这里。
这是我的输入字符串:
str = '32 -3.723 +98.6 .357 0.86'
Run Code Online (Sandbox Code Playgroud)
我的正则表达式是:
print re.findall('[+-]?\d*\.?\d*',str)
Run Code Online (Sandbox Code Playgroud)
它返回:
['32', '', '-3.723', '', '+98.6', '', '.357', '', '0.86', '']
Run Code Online (Sandbox Code Playgroud)
我无法理解为什么所有这些空字符串介于两者之间.
我正在尝试解决很多用户使用包含“~”的语法的情况。如下:
select
business_postal_code as zip,
count(distinct case when left(business_address,1) ~ '^[0-9]' then lower(split_part(business_address, ' ', 2))
else lower(split_part(business_address, ' ', 1)) end ) as n_street
from sf_restaurant_health_violations
where business_postal_code is not null
group by 1
order by 2 desc, 1 asc;
Run Code Online (Sandbox Code Playgroud)
访问案例的链接:https://platform.stratascratch.com/coding/10182-number-of-streets-per-zip-code ?python=
但我无法理解这部分代码实际上是如何工作的:... ~ '^ ....
我需要编写一个脚本,查找文本文件中所有大写的单词(不是全部大写的单词,只是首字母)并按字母顺序显示它们。
我尝试使用这样的正则表达式:
re.findall(r'\b[A-Z][a-z]*\b', line)
Run Code Online (Sandbox Code Playgroud)
但我的函数返回以下输出:
Enter the file name: bzip2.txt
['A', 'All', 'Altered', 'C', 'If', 'Julian', 'July', 'R', 'Redistribution', 'Redistributions', 'Seward', 'The', 'This']
Run Code Online (Sandbox Code Playgroud)
如何删除所有单字母单词(例如:A、C 和 R)?