首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从字符串中删除特定的单词

问从字符串中删除特定的单词
EN

Stack Overflow用户
提问于 2011-02-23 05:36:14
回答 3查看 7.4K关注 0票数 5

我正在尝试解析一个项目的街道名称文件,并且需要删除修饰符(上/下/Old /新/北/东/南/西...)和结尾(街道/道路/道路/车道...),但我在正则表达式方面没有运气。

目前它的设置方式是程序将解析文件一行(即。街道),并检查它

我认为问题在于单词边界--例如,我需要以下转换……

老哈罗路->哈罗(即删除'Old‘前缀和'Way’结尾)

-> (去掉结尾的“Mead”)

  • ,但简而言之,不要管这些:

Gold Lane -> Gold (仅删除结尾)

Eastley大道-> Eastly (去掉结尾)

上西部大道-> Western (删除前缀和结尾)

显然,像"South Street“这样的东西会删除这两个字符串--这是可以的,因为我可以丢弃一个空字符串。

有没有人能告诉我怎么做--我已经阅读了正则表达式并且尝试了几个小时!

​

EN

回答 3

Stack Overflow用户

发布于 2011-02-23 05:39:49

我将使用<list>或Array来存储这些值,然后可能使用foreach循环来根据列表或数组检查地址。然后使用.remove删除列表或数组项的每个实例。这里还有更多的东西,但这是大体的想法。

票数 2
EN

Stack Overflow用户

发布于 2011-02-23 05:51:22

我会使用string.split(“")将地址拆分成单词数组。然后取第一个单词,看看它是否存在于前缀列表中(即a或Array)。对最后一个单词和结尾也这样做。

为每个输入地址运行两个reg-ex表达式列表将非常耗时。使用我的逻辑应该会快很多,特别是在列表被排序和b搜索的情况下。

如果地址数据有点脏(例如,标点符号、双空格等),您可能想要做一些清理,因为像“Main St”这样的输入字符串将有比实际存在更多的‘word’(提示: Trim()和RegEx.Replace(“",”"))。

票数 2
EN

Stack Overflow用户

发布于 2011-02-23 05:43:12

This问题或this问题将对您有所帮助。确保使用Regex.Replace()方法进行模式匹配和替换。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5084278

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档