我刚开始编写脚本,并尝试删除一行中的多个空格,并将其替换为一个空格。 input.txt Hello world
Welcome to python 输出应如下所示 Hello world
Welcome to python 我遵循了下面的命令 with open ('input.txt', 'r') as i_f, open ('output.txt', 'w') as o_f:
for line in i_f:
o_f.write(re.sub('\s+',
我是Python regex的新手,并试图在Python中匹配非空白的ASCII字符。
以下是我的代码:
impore re
p = re.compile(r"[\S]{2,3}", re.ASCII)
p.search('1234') # have some result
p.search('你好吗') # also have result, but Why?
我已经在re.compile中指定了ASCII模式,但是p.search('你好吗')仍然有结果。我想知道我在这里做错了什么?
原始标题:在gsub期间保持字符串中的换行符
有一个,在这里我尝试将JSON转换为减掉无序列表。它几乎完成了,但有一个模式,我无法处理。如果字符串中有空格、换行符和空格序列,那么它将被视为列表项连字符。如果我试图使用对换行符的一些引用来避免这种情况,那么没有什么能像我预期的那样工作。
输入 JSON:
首选输出(两个空格缩进)标记:
- Info
- Python
- The Ultimate Python Beginner's Handbook
- Python Like You Mean It
- Automate the Boring Stuff wi
我是Python3.6的新手。\S*.\S*和\S+..\S+有什么区别?
**import re
s = 'A message from csev@umich.edu to cwen@iupui.edu about meeting @2PM'
lst = re.findall('\S+@\S+', s)
print(lst)**
[a-zA-Z0-9]\S*@\S*[a-zA-Z]
今天,我发现Python3和Python2中的函数string.replace(str1, str2)并没有按照我本能地认为的那样运行:
$ python3
Python 3.4.2 (default, Oct 8 2014, 10:45:20)
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> str = ' not not not not Cannot no
当字符周围有空格时,我会尝试替换一个字符串,如下所示:
>>> strvar = " a a b b "
>>> strvar.replace('a', 'r')
" r r b b " # WORKS!
>>> strvar.replace('a ', 'r ')
" r r b b " # WORKS!
>>> strvar.replace(' a', ' r')
"
我想匹配引号之间的文本,但只有当它由文本组成,而不仅仅是空格时。
换句话说
hello world "this is matched" bonjour
应该与this is matched匹配,但是
hello world " " bonjour
不应该匹配任何内容。
几乎就是我想要的,只是它使用JS进行测试(这也是我目前使用Python语言的变通方法)。OP的评论提到了对\s的否定,但我不认为它在任何地方都被使用(除了作为评论)
有没有一种简单的方法可以将这样的条件添加到正则表达式"(.+)"
关门了。这个问题需要调试细节。它目前不接受答案。 想要改进这个问题吗?更新问题,使其成为堆栈溢出的主题。 两天前就关门了。 改进这个问题 我正在寻找python正则表达式模式,以便只匹配空格字符后的第一个字符。所有的空间都只是一个空间。目前,我的模式匹配空格后面的所有字符,但我只想要第一个字符。 例如: hello my friend应与m和f匹配 today is great应与i和g匹配 im doing fine应与d和f匹配
我正在尝试使用以下Python脚本从Arduino串行端口读取传感器值: import serial
ser = serial.Serial("COM5", baudrate=9600, timeout=1)
def get_val():
ser.write(b'g')
return ser.readline().decode().rstrip()
while 1:
data = get_val()
print(data) 到目前为止,一切都运行得很好,python在控制台上以字符串的形式打印传感器的值。但是当我尝试将字符串&
我想知道如何使用正则表达式进行搜索。
这是我的代码
import re
data = "python one test code"
p = re.compile("^python\s\w+")
结果
print(p.findall(data))
['python one']
我想得到的结果如下所示:
print(p.findall(data))
['python one test code']
如果如下所示,I可以得到上述结果
p = re.compile("^python\s\w+\s\w+\s\w+")
为什么这个可以与python中的regularexpressions(re)模块一起工作。 import re
x = 'if a + b > 0 && a - b < 0:'
print(re.search(r"\s&&\s", x))
output:<re.Match object; span=(12, 16), match=' && '> 这个不是吗? import re
x = 'if a + b > 0 && a - b <
使用Python,我试图在一个返回中捕获一个短语,加上前面的单词和一个接一个单词。
也就是说,从句子中..。
We want to see this phrase here and then again!
返回
see this phrase here
我最近得到的是..。
>>> s = 'We want to see this phrase here and then again!'
>>> re.search("\w*\sthis phrase\w*\s",s)
<_sre.SRE_Match object; sp
是否可以搜索一系列单词并提取下一个单词。例如,在txt文件中,搜索单词'Test‘,然后直接返回该单词?
Test.txt
This is a test to test the function of the python code in the test environ_ment
我希望得到结果:
to, the, environ_ment
我试图在python中使用regex搜索字符串,查找以空格开头并以后面的空格结尾的特定单词。我想要搜索的字符串是;
JAKARTA, INDONESIA (1 February 2017)
我想要回", INDONESIA ("部分,这样我就可以把rtrim和ltrim应用到它了。因为我也有可能返回英国。
我试图在我的python代码中编写这个代码;
import re
text = "JAKARTA, INDONESIA (1 February 2017)"
countryRegex = re.compile(r'^(,)(\s)([a-zA-Z]+)
我正在尝试使用/*处理c++文件中包含python number */的所有行。
例如a.cpp:
int main(void)
{
/* Test 1 */ //will be found, and replaced.
int a =1;
/* Test 2 */ //will be found, and replaced.
int b = 2;
return 0;
}
在我的python中,我尝试了:
with open(fname, 'rw') as f:
for line_term
我必须匹配python 2.7中的字符串,这些字符串的格式是- {2位月的日期}{准确的单词de或del} {4位数年份},并将字符串的整个子字符串替换为
{月中的2位数日} {4位数年份}并删除de/del一词。我知道单词的界限(\b),我试过这样做:
s4 = "la fecha de hoy es septiembre 31 de 1958 and tom fecha septiembre
30 de 1958"
s4 = re.sub(r'((\b\d{2}\b)[de,del](\b\d{4}\b)', "\\1 \\3", s4)
如何搜索版本no python:
Build Host : iox-lux-013
Version : 3.2.8.08I sample
我试过了:
import re
p=re.compile("Version.*: (.*?) ")
list=p.findall(s)
for i in list:
print i
效果很好
但不是为了:
Version : 3.2.8.08I
不工作:/