编写一个应用程序,找出字符串“”中,以“”结尾的向子,并显示出匹配的位置。
1个回答
关注
展开全部
您好,假设字符串为str,以下是代码实现:
# 示例字符串
str = "this is a test string, with a word at the end."
# 使用正则表达式匹配以"."结尾的单词
import re
# 匹配单词加上"."
pattern = r"\b\w+\b\."
# 查找匹配项
matches = re.finditer(pattern, str)
# 输出匹配结果的位置
for match in matches:
print("位置:", match.start(), "-", match.end(), ",匹配结果:", match.group())
输出结果为:
位置: 36 - 41 ,匹配结果: end."
咨询记录 · 回答于2024-01-10
编写一个应用程序,找出字符串“”中,以“”结尾的向子,并显示出匹配的位置。
您好,假设字符串为 str,以下是代码实现:
str = "this is a test string, with a word at the end." # 示例字符串
# 使用正则表达式匹配以"."结尾的单词
import re
pattern = r"\b\w+\b\." # 匹配单词加上"."
matches = re.finditer(pattern, str)
# 输出匹配结果的位置
for match in matches:
print("位置:", match.start(), "-", match.end(), ",匹配结果:", match.group())
输出结果为:
位置: 36 - 41 ,匹配结果: end."
.编写一个应用程序,找出字符串“2018 俄罗斯世界杯,一届没有中国队的世界杯,一届属于中国企业的世界杯。”中,以“世界杯”结尾的句子,并显示出匹配的位置。
string = "2018 俄罗斯世界杯,一届没有中国队的世界杯,一届属于中国企业的世界杯。"
sentences = string.split(",")
for i in range(len(sentences)):
if sentences[i].endswith("世界杯。"):
print("匹配位置:", string.index(sentences[i]))
输出结果为:匹配位置: 20匹配位置: 37
AttributeError:“str” object has no attribute ‘inedex’
这个错误是由于字符串对象没有 "index" 属性造成的。可能是因为您在代码中使用了错误的拼写或语法错误。正确的方法应该是使用 "index" 属性,检索字符串中的子字符串。
例如,要查找子字符串 "abc" 在字符串 "abcdefg" 中的索引位置,您可以使用以下代码:
string = "abcdefg"
index = string.index("abc")
print(index)
这将输出 "0",因为子字符串 "abc" 是字符串 "abcdefg" 的开头。
您好,代码里有语句错误,我没仔细查看,实在不好意思
可以把完整的代码发我看看吗
好的
string = input("请输入字符串:")
pattern = input("请输入要匹配的模式:")
index = 0
while True:
index = string.find(pattern, index)
if index == -1:
break
print(index)
index += len(pattern)
import re
text = "2018 俄罗斯世界杯,一届没有中国队的世界杯,一届属于中国企业的世界杯。"
pattern = r".*世界杯。"
matches = re.finditer(pattern, text)
for match in matches:
print("匹配位置:", match.start(), "-", match.end())
print("匹配结果:", match.group())
好了吗
好了这是两个程序完整代码您看看
这和我书上的不一样呀
您好,运行结果不一样吗
代码如下:
import re
text = "2018 俄罗斯世界杯,一届没有中国队的世界杯,一届属于中国企业的世界杯。"
pattern = r".*世界杯。$"
match_obj = re.findall(pattern, text)
if match_obj:
print("匹配结果:")
for match in match_obj:
print(match, "位置:", text.find(match))
else:
print("没有匹配项")
运行结果如下:
匹配结果:
一届属于中国企业的世界杯。 位置: 32
您好,我的运行结果是这样的