我正在尝试使用正则表达式来解析以某种(key###value)格式编写的值。该值始终是一个数字。不管怎样,我认为用 python 来做是最简单的,所以这里是我正在尝试的一些代码:
import re
line = "(text 1###123)(text 2###345)";
matchObj = re.match( r'\(.*###[0-9]+\)', line)
if matchObj:
print matchObj.group(0) # produces (text 1###123)(text 2###345)
# print matchObj.group(1) # gives an error
else:
print "No match!!"
Run Code Online (Sandbox Code Playgroud)
尽管有两个不同的对象与我编写的正则表达式匹配,但 python 将它们作为单个字符串返回给我——这不是我想要的。我怎样才能解决这个问题?
事实上,我真正想要的是将字符串分成类似["text 1", "123", "text 2", "345]. 因此,如果有人有一个简单的方法来实现这一点,我也将不胜感激。
我收到一个像这样的私钥:-
-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEA3Tz2mr7SZiAMfQyuvBjM9Oi..Z1BjP5CE/Wm/Rr500P
DtkpjGHQzPF6vOe907y5NQLvVFGXUq/FIJZxB8k..fJdHEm2M4=
-----END RSA PRIVATE KEY-----
Run Code Online (Sandbox Code Playgroud)
我想要第一行的最后一个 ----- 和最后一行的第一个 ----- 之后的数据,以便匹配组的数据如下所示:-
MIIEpQIBAAKCAQEA3Tz2mr7SZiAMfQyuvBjM9Oi..Z1BjP5CE/Wm/Rr500P
DtkpjGHQzPF6vOe907y5NQLvVFGXUq/FIJZxB8k..fJdHEm2M4=
Run Code Online (Sandbox Code Playgroud)
这就是我尝试过的,但绝对没有得到我想要的
(?=[-]*(?=[A-Z]*(?=[-])))(.*)(?=[-]*(?=[A-Z]*(?=[-])))
Run Code Online (Sandbox Code Playgroud)
你能帮我纠正一下这个问题吗?
Text = "<a> text </a> <c> code </c>"
Run Code Online (Sandbox Code Playgroud)
我想删除<c> code </c> python 中的语句
output = "<a> text </a>"
Run Code Online (Sandbox Code Playgroud) 我试图在任意字符串中获取一组模式的所有出现,就像这样:
my $STRING = "I have a blue cat. That cat is nice, but also quite old. She is always bored.";
foreach (my @STOPS = $STRING =~ m/(?<FINAL_WORD>\w+)\.\s*(?<FIRST_WORD>\w+)/g ) {
print Dumper \%+, \@STOPS;
}
Run Code Online (Sandbox Code Playgroud)
但结果不是我所期望的,我也不完全明白为什么:
$VAR1 = {
'FINAL_WORD' => 'old',
'FIRST_WORD' => 'She'
};
$VAR2 = [
'cat',
'That',
'old',
'She'
];
$VAR1 = {
'FINAL_WORD' => 'old',
'FIRST_WORD' => 'She'
};
$VAR2 = [
'cat',
'That',
'old',
'She'
];
$VAR1 = {
'FINAL_WORD' => 'old',
'FIRST_WORD' => …Run Code Online (Sandbox Code Playgroud) 在下面的测试字符串中,键和值之间可以有一个等号或一个或多个空格字符。如果存在等号,则它可以可选地前面和/或后面有零个或多个空格字符。
$MyTstString = "KeyX = ValueY"
$RegExString = "^(?<Key>.+)(?<Sep>\s*=\s*)(?<Value>.*)$"
$MyTstString -match $RegExString | Foreach {$Matches}
Run Code Online (Sandbox Code Playgroud)
什么正则表达式会为我做到这一点?
将 RegExString 更改为
$RegExString = "^(?<Key>.+)(?<Sep>\s*=\s*|\s+)(?<Value>.*)$"
Run Code Online (Sandbox Code Playgroud)
当 TestString 为“KeyA = ValueB”时,会导致 Key 和 Sep 不正确
这是一个 DNA 字符串,我想将其拆分,然后以 3 组为一组进行组合
dna=c("TACACGATGACAGTCTTGACGGGTTCTCCTACT")
dna.sg = unlist(strsplit(dna, ""))
Run Code Online (Sandbox Code Playgroud)
给予
[1] "T" "A" "C" "A" "C" "G" "A" "T" "G" "A" "C" "A" "G" "T" "C" "T" "T" "G" "A" "C" "G" "G" "G" "T" "T" "C" "T" "C" "C" "T" "A" "C" "T"
Run Code Online (Sandbox Code Playgroud)
但我想有
"TAC" "ACG" [...]
Run Code Online (Sandbox Code Playgroud) 我有这个正则表达式来确定该行是否包含两个下划线:
\s*_{2}(\w+)
Run Code Online (Sandbox Code Playgroud)
任何空格,两个下划线然后一个字.事实证明,我也需要知道没有下划线,所以我有:
\s*(\w+)
Run Code Online (Sandbox Code Playgroud)
可选空格后跟一个单词.然后我得到了第1组,这是我的话.到现在为止还挺好.
问题是当使用两个下划线时采取的操作,当没有使用下划线时几乎与代码相同(除了我举起一个标记)
if( s =~ uderscore ) {
takeGroup( 1 )
yada yada
flag = true
} else if( s =~ noUnderscore {
takeGroup( 1 )
yada yada
flag = false
}
Run Code Online (Sandbox Code Playgroud)
我认为必须有一个更好的方法,而不是重复整个正则表达式并使用和不使用测试.
是否可以仅使用正则表达式(无附加代码!)来匹配第n个匹配?例如:
"CAR" - "火车" - "船" - "自行车"
现在我只想匹配BOAT,匹配的正则表达式将是"[AZ] +",但是这也匹配第一个,第二个和第四个.
有没有人有这个纯正的正则表达式解决方案?我需要这个,因为我无法更改使用正则表达式的代码,但我可以提供正则表达式.
最好的问候,罗宾
我有一个姓氏和名字同时出现的名字列表:
BorisovaSvetlana A.; KimHak Joong; PuXiaotao; LiuHung-wen*
Run Code Online (Sandbox Code Playgroud)
我想在姓和名之间添加一个逗号和空格,以使输出为:
Borisova, Svetlana A.; Kim, Hak Joong; Pu, Xiaotao; Liu, Hung-wen*
Run Code Online (Sandbox Code Playgroud)
我在KNIME中使用一个String Manipulation节点,并且我想regexReplace($col1$, ,"")会使用它,也许使用[az]和[AZ]进行某种先行查找以直接在大写字母后写一个小写字母,但是我对regex不熟悉到目前为止,这就是我所拥有的。
我该如何解决这个问题?
试图制作一个非常简单的HTML缩小器,仅消除标记之间的空白吗?
我认为最好的方法是使用JavaScript正则表达式?但永远无法找出正确的方法。
<p>leave white spaces</p> <p>leave white spaces</p>
Run Code Online (Sandbox Code Playgroud)
缩小后:
<p>leave white space</p><p>leave white space</p>
Run Code Online (Sandbox Code Playgroud)
试图瞄准>这里的空间<
regex-group ×10
regex ×8
string ×3
java ×2
python ×2
regex-greedy ×2
dom ×1
javascript ×1
knime ×1
perl ×1
powershell ×1
r ×1