You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在R语言中如何拆分无空格分隔的连续句子?

解决R中XML抓取文本的句子拆分问题

可以使用正则表达式的正向/反向预查精准处理字母间无空格的句号,既不会破坏数字格式,又能为后续拆分句子做好准备:

  1. 先修复文本中的缺失空格
    使用stringr包的str_replace_all,匹配「字母后接句号再接字母」的模式,在句号后插入空格:
library(stringr)

# 示例文本
chunk_of_text <- "This sentence ends.This sentence continues. 1.5 pounds is correct. Another example.Here we go."

# 仅在字母-句号-字母的结构中添加空格
fixed_text <- str_replace_all(chunk_of_text, "(?<=[[:alpha:]])\\.(?=[[:alpha:]])", ". ")

正则表达式说明:

  • (?<=[[:alpha:]]):反向预查,确保句号前是字母
  • \\.:匹配句号本身
  • (?=[[:alpha:]]):正向预查,确保句号后是字母
  1. 拆分句子
    处理后的文本可以直接用你原本的str_split方法拆分:
list_of_strings <- str_split(fixed_text, pattern = boundary("sentence"))

测试上述代码后,示例文本会被正确拆分为4个独立句子,同时1.5 pounds的格式完全保留。

内容的提问来源于stack exchange,提问作者Pied Pipetter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 10:41:31