- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在努力使用正则表达式来提取句号之间的部分字符串,但如果它前面有特定字母(例如示例中的 CO),则忽略句号。我们可以假设相关 block 总是以“LTD”结尾。
案例一:
string = "FREDS CHIP SHOP. S & B SERVICES CO. & SONS LTD. 1-12 THE STREET"
我要:“S & B SERVICES CO. & SONS LTD。”
案例二:
string = "SOME TEXT. BUSINESS NAME LTD. 1-12 THE STREET"
我想要“BUSINESS NAME LTD.”
案例三:
string = "SIMPLE BUSINESS NAME LTD. 1-12 THE STREET"
我想要“SIMPLE BUSINESS NAME LTD.”
我目前有:
#!/usr/bin/python
import sys
import re
vnumber_name = "FREDS CHIP SHOP. S & B SERVICES CO. & SONS LTD. 1-12 THE STREET"
#vnumber_name = "SOME TEXT. BUSINESS NAME LTD. 1-12 THE STREET"
#vnumber_name = "SIMPLE BUSINESS NAME LTD. 1-12 THE STREET"
def test(vnumber_name):
#ltd = re.search(r'.+\sLTD[.]?', vnumber_name)
ltd = re.search(r'[.?][\s]{1,2}(?:[^.]+|(?!CO.))LTD[.]?', vnumber_name)
if ltd:
print "got it: " + ltd.group(0)
else:
print "nothing"
test(vnumber_name)
这是不对的。
我可以创建一些 if 子句,但最好用一行正则表达式来实现。
最佳答案
您可能希望免除多个缩写,因此这里有一些使用“负向回顾”的更灵活的方法:从字符串的开头匹配到下一个不遵循某些字符串的句点 ( CO
或 CORP
(对于此示例))。非贪婪的 .*?
(后跟句点)使您匹配到第一个这样的句点。
.*?(?<!..CO|CORP)\.
这将使您能够正确地将字符串分解为“句子”。如果您只对以 LTD 结尾的那些感兴趣,则可以选择那些。
关于python - 在句点之间提取字符串,除非 CO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13742447/
我在 Aptana 框架上的 Jruby 中编码时遇到问题; 当我运行 Rails 服务器时,它抛出“编码流中的无效编码”我不知道如何解决? 它在“和”上抛出错误,这里我给出了一段代码,请帮助解决这个
我打算在我的 koa 应用程序中使用 co-mysql 或 mysql-co。我应该使用哪个包? 为什么co-mysql github主页说: yes, you should not use co-m
我是 Spark 的新手,我有两个问题: 我有一大堆点,我从中制作了一个 RDD(称为 partitionedData),并根据自定义分区器对其进行分区,以便每个分区最多有一个阈值点数。因为我需要在每
虽然我有点弄清楚 Koa 流程机制是如何工作的(我认为),但我似乎无法掌握 co 和 co.wrap 之间的所有差异。这是给出意外行为的代码: "use strict"; var co = requi
你好,我有我使用的代码 ORDER BY domain_name ASC 并得到像这样的结果 name-somethinga.co.uk name-somethingb.co.uk name.co.u
所以我尝试使用 co 来包装返回 Promise 的 MongoDB 方法例如 http://mongodb.github.io/node-mongodb-native/2.0/reference/e
我正在为https://test.company.co.uk(示例域名)的域构建Android应用 通常,在build.gradle文件中,我们将applicationId设置为向后域(因此test.
fun main() = runBlocking { var i = 1 var job = launch (Dispatchers.Default){ println
我正在努力使用正则表达式来提取句号之间的部分字符串,但如果它前面有特定字母(例如示例中的 CO),则忽略句号。我们可以假设相关 block 总是以“LTD”结尾。 案例一: string = "FRE
好吧,我正在尝试重用一部分 C# 代码。它是一个带有 UDP 服务器的抽象类,可以在这里看到: http://clutch-inc.com/blog/?p=4 我创建了一个这样的派生类: public
我正在尝试使用 Angular 将两个字符串相乘。 {{Number(someString) * Number(someOtherString)}} 但是我收到了这个错误: ERROR TypeErr
本文整理了Java中co.cask.tephra.runtime.ZKModule类的一些代码示例,展示了ZKModule类的具体用法。这些代码示例主要来源于Github/Stackoverflow/
本文整理了Java中co.cask.tigon.guice.ZKClientModule类的一些代码示例,展示了ZKClientModule类的具体用法。这些代码示例主要来源于Github/Stack
我正在尝试登录 Virtual Trader使用 python 请求模块的网站 - 我在这方面的经验有限,所以希望得到一些帮助。 之前我用下面的代码登录过类似的网站: import requests
如果我们比较像“CAT”和“cat”这样的两个字符串并使用 vbBinaryCompare 模式,MSDN 说它会进行二进制比较,但什么是二进制比较?这是否意味着它以不区分大小写的方式进行?它与文本比
我有这样的特质: trait CanFold[-T, R] { def sum(acc: R, elem: T): R def zero: R } 使用一个像这样使用它的函数: def sum
我很难理解 The Little Schemer 的 evens-only*&co 发生了什么事情第 145 页的示例。 这是代码: (define evens-only*&co (lambda (
给定 t.co 链接,我如何才能找到链接解析的位置?例如,如果我有 t.co/foo,我想要一个返回 domain.com/bar 的函数或进程。 最佳答案 我会远离您无法控制的外部 API。这只会在
我正在尝试为Elastic Search(Elastic.co)实现相关性反馈。 我知道boosting queries,它允许指定正词和负词,其想法是打折否定词,而不是像 bool(boolean)
在此 Repository 类中,只有一个称为 getMovies 的公共(public)函数,直接从 useCase 类调用。 现在的问题是我希望这个函数从一次调用中多次返回 movieData ,
我是一名优秀的程序员,十分优秀!