精华内容
下载资源
问答
  • 2021-03-04 20:35:16

    直接上代码

    import re

    def removePunctuation(self, content):
            """
            文本去标点
            """
            punctuation = r"~!@#$%^&*()_+`{}|\[\]\:\";\-\\\='<>?,./,。、《》?;:‘“{【】}|、!@#¥%……&*()——+=-"
            content = re.sub(r'[{}]+'.format(punctuation), '', content)
            return content.strip().lower()

     

    更多相关内容
  • python中如何去除标点符号

    千次阅读 2020-12-09 23:21:10
    python中如何去除标点符号,写法,方法,字符,字母,都是python中如何去除标点符号易采站长站,站长之家为您整理了python中如何去除标点符号的相关内容。Python去掉标点符号的方法如下:方法一:str.isalnum:S.isalnum...

    python中如何去除标点符号,写法,方法,字符,字母,都是

    python中如何去除标点符号

    易采站长站,站长之家为您整理了python中如何去除标点符号的相关内容。

    Python去掉标点符号的方法如下:

    方法一:

    str.isalnum:

    S.isalnum() -> bool

    返回值:如果string至少有一个字符并且所有字符都是字母或数字则返回True,否则返回False。

    实例:>>> string = "Special $#! characters spaces 888323">>> ''.join(e for e in string if e.isalnum())'Specialcharactersspaces888323'

    只能识别字母和数字,杀伤力大,会把中文、空格之类的也干掉

    方法二:

    string.punctuationimport re, strings ="string. With. Punctuation?" # Sample string # 写法一:out = s.translate(string.maketrans("",""), string.punctuation)# 写法二:out = s.translate(None, string.punctuation)# 写法三:exclude = set(string.punctuation)out = ''.join(ch for ch in s if ch not in exclude)# 写法四:>>> for c in string.punctuation:s = s.replace(c,"")>>> s'string With Punctuation'# 写法五:out = re.sub('[%s]' % re.escape(string.punctuation), '', s)## re.escape:对字符串中所有可能被解释为正则运算符的字符进行转义# 写法六:# string.punctuation 只包括 ascii 格式; 想要一个包含更广(但是更慢)的方法是使用: unicodedata module :from unicodedata import categorys = u'String — with - «Punctuation »...'out = re.sub('[%s]' % re.escape(string.punctuation), '', s)print 'Stripped', out# 输出:u'Stripped String \u2014 with \xabPunctuation \xbb'out = ''.join(ch for ch in s if category(ch)[0] != 'P')print 'Stripped', out# 输出:u'Stripped String with Punctuation '# For Python 3 str or Python 2 unicode values, str.translate() only takes a dictionary; codepoints (integers) are looked up in that mapping and anything mapped to None is removed.# To remove (some?) punctuation then, use:import stringremove_punct_map = dict.fromkeys(map(ord, string.punctuation))s.translate(remove_punct_map)# Your method doesn't work in Python 3, as the translate method doesn't accept the second argument any more. import unicodedataimport systbl = dict.fromkeys(i for i in range(sys.maxunicode) if unicodedata.category(chr(i)).startswith('P'))def remove_punctuation(text):return text.translate(tbl)

    方法三:

    re

    例:import res ="string. With. Punctuation?"s = re.sub(r'[^\w\s]','',s)

    测试:import re, string, timeits ="string. With. Punctuation"exclude = set(string.punctuation)table = string.maketrans("","")regex = re.compile('[%s]' % re.escape(string.punctuation))def test_set(s):return ''.join(ch for ch in s if ch not in exclude)def test_re(s): return regex.sub('', s)def test_trans(s):return s.translate(table, string.punctuation)def test_repl(s):for c in string.punctuation:s=s.replace(c,"")return sprint"sets :",timeit.Timer('f(s)', 'from __main__ import s,test_set as f').timeit(1000000)print"regex :",timeit.Timer('f(s)', 'from __main__ import s,test_re as f').timeit(1000000)print"translate :",timeit.Timer('f(s)', 'from __main__ import s,test_trans as f').timeit(1000000)print"replace :",timeit.Timer('f(s)', 'from __main__ import s,test_repl as f').timeit(1000000)out_put:# sets : 19.8566138744# regex : 6.86155414581# translate : 2.12455511093# replace : 28.4436721802

    更多Python相关技术文章,请访问Python教程栏目进行学习!以上就是关于对python中如何去除标点符号的详细介绍。欢迎大家对python中如何去除标点符号内容提出宝贵意见

    展开全文
  • python去除文本标点符号

    千次阅读 多人点赞 2019-11-01 18:10:30
         ...为了消除标点符号的影响,需要去除标点python的string模块下的punctuation包含所有的英文标点符号。所以用replace()一下就可以去除: Example 1: import stri...

            今天做一个文本相似度的小任务,利用python的“Levenshtein”包可对比两个文本的相似度。为了消除标点符号的影响,需要去除标点,python的string模块下的punctuation包含所有的英文标点符号。所以用replace()一下就可以去除:

    Example 1:
    import string
    s = 'today is friday, so happy..!!!'
    for c in string.punctuation:
        s = s.replace(c,'')
    print(s)
    
    Result:
    today is friday so happy
    

            string.punctuation中的标点符号只有英文,如果是中文文本,可以调用zhon包的zhon.hanzi.punctuation函数即可得到中文的标点符号集合。

    Example 2:
    from zhon.hanzi import punctuation
    a = '今天周五,下班了,好开心呀!!'
    for i in punctuation:
        a = a.replace(i,'')
    print(a)
    
    Result:
    今天周五下班了好开心呀
    

    <( ̄︶ ̄)↗[GO!]

    展开全文
  •   由于标点符号会影响我们分词的效果,这里我着重了解学习了标点去除的方法,总结了有以下几种,欢迎大家补充???? 二、解决方案 以下描述了4种方法: import re import string sentence = "+今天=是!2021! 年/8...

    一、问题背景

      由于最近做nlp相关的项目,在进行数据预处理的时候,需要对文本进行分词去停用词词性标注标点去除等预处理方法。
      由于标点符号会影响我们分词的效果,这里我着重了解学习了标点去除的方法,总结了有以下几种,欢迎大家补充👏

    二、解决方案

    以下描述了4种方法:

    import re
    import string
    
    sentence = "+今天=是!2021!   年/8月?1,7日★.---《七夕节@》:让我*们出门(#@)去“感受”夏天的荷尔蒙!"
    sentenceClean = []
    # method 1
    remove_chars = '[·’!"\#$%&\'()#!()*+,-./:;<=>?\@,:?¥★、….>【】[]《》?“”‘’\[\\]^_`{|}~]+'
    string1 = re.sub(remove_chars, "", sentence)
    sentenceClean.append(string1)
    
    # method 2
    punct = str.maketrans({key:"" for key in string.punctuation})
    # 这里的string中包含的标点符号不是很全
    # string.punctuation = !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ 都是英文字符下的标点
    string2 = sentence.translate(punct)
    sentenceClean.append(string2)
    
    # method 3
    string3 = "".join(re.findall(r'\b\w+\b',sentence))
    # 正则表达式中\b可以简单理解为单词的边界(指的是字母数字和非字母数字的边界),\w表示字母数字下划线,
    #'\b\w+\b'在这道题中就能做到匹配一个单词,re.findall是将全部的单词找出来
    sentenceClean.append(string3)
    
    # method 4 
    string4 = re.sub('\W*', '', sentence) # 把非单词字符全部替换为空,恰好与\w相反
    sentenceClean.append(string4)
    
    
    print(sentence)
    print(sentenceClean)
    '''
    以下的结果有一些细微的差别,可以自行对比查找下原因。
    result:
    +今天=是!2021!   年/8月?1,7日★.---《七夕节@》:让我*们出门(#@)去“感受”夏天的荷尔蒙!
    ['今天是2021   年8月17日七夕节让我们出门去感受夏天的荷尔蒙', 
    '今天是!2021   年8月17日★《七夕节》:让我们出门()去“感受”夏天的荷尔蒙!', 
    '今天是2021年8月17日七夕节让我们出门去感受夏天的荷尔蒙',
    '今天是2021年8月17日七夕节让我们出门去感受夏天的荷尔蒙']
    '''
    

    如果只是简单的个别标点的替换,可以使用replace的内置函数进行替换,例如s.replace(’,’, “”)

    以上的几种方法主要是分成了三种类型

    1. string库函数;
    2. 正则查找;
    3. replace内置函数。

      有兴趣的同学可以对比一下三类方法的效率,在大量文本数据需要处理的时候,这是必须考虑的一个问题。

    展开全文
  • Python去除文本所有标点符号

    万次阅读 2019-09-19 16:48:17
    去除标点符号方式多种多样,这里介绍两种自己常用的。 1、python自带punctuation包,可以消除所有中文标点符号。 import re,string from zhon.hanzi import punctuation text = " Hello, world! 这,是:我;第!一...
  • 1.正则表达式(可以删除中英文字符) import re a=re.sub(r'[\W]','',s) . 替换任意1个字符(除了\n) [ ] 替换[ ]中列举的字符 \d 替换数字,即0-9 \D 替换非数字 \s ... 2....
  • Python去除文本中所有中英文标点符号
  • 今天小编就为大家分享一篇python3去掉string中的标点符号方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python ——使用正则化去除标点符号

    千次阅读 2020-10-12 14:53:43
    python ——使用正则化去除标点符号 在进行文本预处理时,可以使用正则化去掉文本中的标点符号。 re.sub(pattern, repl, string, count=0, flags=0) 去除掉一般符号代码如下: r = "[A-Za-z0-9_.!+-=——,$%^,。...
  • Python文本文件中删除标点符号

    千次阅读 2021-07-16 14:43:56
    I'm trying to remove a list of punctuation from my text file but I have only one problem with words separated from hyphen. For example, if I have the word "post-trauma" I get "posttrama" conversely I ...
  • Python去除文本标点符号(含中英文符号)

    万次阅读 多人点赞 2020-03-13 23:17:32
    在处理文本的时候往往需要对标点符号进行处理: 导入python string类自带的标点符号 from string import punctuation s='不错!今天,也要"加油"哦?' dicts={i:'' for i in punctuation} punc_table=str.maketrans...
  • python去除常见标点符合以及空格

    千次阅读 2020-12-14 15:42:40
    在处理中文语句进行分词前,标点符号比较占位置,可以使用下面方法清空掉。 def drop_punctuation(text): punc = '~`!#$%^&*()_+-=|\';":/.,?><~·!@#¥%……&*()——+-=“:’;、。,?》《{} '...
  • python 去除所有的中文 英文标点符号

    万次阅读 多人点赞 2020-04-08 15:46:45
    python的string模块下的 punctuation 包含所有的英文标点符号,所以用replace()一下就可以去除。 代码示例: import string stri = 'today is friday, so happy..!!!' punctuation_string = string.punctuation ...
  • 最近在处理文本,发现切分句子,去除标点符号,判断字符串是否包含中文经常会用到,我这里分享一下我的代码: 切分句子 import re def split_sentences(line): line_split = re.split(r'[。!;?,]',line.strip...
  • 今天小编就为大家分享一篇python 去除txt文本中的空格、数字、特定字母等方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python啥版本。。line是string?看文档https://docs.python.org/2/library/stdtypes.html#str.translateunicode 真麻烦。。上了次stackoverflow才找到。。。import unicodedataimport systbl = dict.fromkeys(i for ...
  • 想要把一大段中文文本中所有的标点符号删除掉,然后分词制作语料库使用,大神们有没有办法呢?或者哪位大神有中文语料库给个链接好不好?我想做新闻的文本相似度分析,提取关键词的时候需要语料库。 谢谢大神们~~~~...
  • import re # 只保留中文、大小写字母和阿拉伯数字 reg = "[^0-9A-Za-z\u4e00-\u9fa5]" text = "<>\(*芸%芸^),,\\(-我@)&love=+《你》!【~我//""[们]】2{0}1.6~————、结/婚'吧::!...
  • 用户的输入可能风格迥异,最常见的可能算是夹杂各种标点符号的输入了。怎样过滤?在csdn论坛上面看到一贴,综合了一下,得到了下面的正则表达式,也许会帮助你解决问题:\\pP|\\pS我们用一个例子演示此正则表达式...
  • python中怎么去掉标点符号

    千次阅读 2021-01-13 21:32:34
    既然是去掉标点符号,那当然是用正则表达式啦。正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个...
  • Python处理中文标点符号大集合

    千次阅读 2021-01-11 20:51:33
    中文文本中可能出现的标点符号来源比较复杂,通过匹配等手段对他们处理的时候需要格外小心,防止遗漏。以下为在下处理中文标点的时候使用的两种方法:中文标点集合比较常见标点有这些:!?。"#$%&'()*+,-...
  • string.punctuation支持导入所有英文标点: !"#$%&’()*+,-./:;<=>?@[]^_`{|}~ zhon.hanzi.punctuation支持导入所有中文标点: "#$%&'()*+,-/:;<=>@[\]^_`{|}~⦅⦆「」、...
  • TypeScript&colon; Angular 2 的秘密武器(译)本文整理自Dan Wahlin在ng-conf上的talk.原视频地址: ...查看造成等待事件的具体SQL语句先查看存在的等待事件:col event for a40col WAIT_CLA...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,595
精华内容 1,038
关键字:

python文本去除标点符号