如何找到字符串的特定部分?

2024-09-27 07:17:40 发布

您现在位置:Python中文网/ 问答频道 /正文

访问一个CSV文件,循环遍历所有行(字符串),并且我希望保持/打印从“.”开始的每个字符串的所有部分,中间有两个单词,用“.”、“或”、“或”结尾。p>

例如,如果字符串是:“这是我的新频道。请订阅!”我只想保留“。请订阅!”

到目前为止,我只有这个来显示每个字符串中有多少个单词:

with open("data2.csv", encoding="utf-8", newline='') as f:
    reader = csv.reader(f)
    for row in reader:
        rowstr = str(row[1])
        res = len(row[1].split())
        print(res)

我试过:

with open("data2.csv", encoding="utf-8", newline='') as f:
    reader = csv.reader(f)
    for row in reader:
        rowstr = row[1]
        res = len(row[1].split())
        re.findall(r"\.\S+\s\S+[.?!]", rowstr)
        print(row[1])

我没有从findall获得任何输出,只有从打印行[1]获得输出

修好了

工作代码:

with open("data2.csv", encoding="utf-8", newline='') as f:
    reader = csv.reader(f)
    for row in reader:
        rowstr = row[1]
        res = len(row[1].split())
        finalData = re.findall(r"(\.\W\w+\W\w+[\.\?!])", rowstr)
        print(finalData)

Tags: csv字符串inforaswithnewlineres

热门问题