Python – 使用正则表达式匹配包含“g”后跟一个或多个“e”的单词的程序
Python 是数据可视化和深度学习领域最强大的编程语言。正则表达式(也称为正则表达式)是搜索给定文档中任何字符或文本的有效工具。Python 语言为用户提供了从基本计算到复杂计算的多种功能。Python 方法使用各种功能来匹配给定文本中的单词。Python 是一种高级编程语言,也是一种用途广泛的语言,它最受开发人员青睐,并且广泛用于数据分析。
使用正则表达式匹配单词的程序
为了解释这一点,我们可以举一个例子,例如使用一个名为 text 的变量来存储某些值。
Text = “John is a genius at playing football games”。
输出打印为 [genius, game]
正则表达式
字符串开头的 `r` 表示它应该被视为原始输入,因此在编译模式时不会转义特殊字符。
`\b` 字符定义单词边界,确保只找到以“g”开头且前面没有字母的完整单词。
出现在空格中的每个 g-单词,其中可能存在多个连续的 e-字符,必须以它们后面提供的另一个边界 \b 字符结尾;所有其他在确定单词模式之间捕获的重复(一个 OK- 零个包含在内)e-字符都已事先计算过,此后仅返回匹配的短语,存储在 matches 对象 format_list 数据类型中。
方法:-
方法 1 - 使用 findall() 函数
方法 2 - 使用 match 函数
方法 3 - 使用 finditer() 函数
方法 1:使用 findall() 函数的 Python 程序来使用正则表达式匹配单词
句子用一组单词初始化,可以使用 findall 方法找到以“g”开头并后跟一个或多个“e”的单词。
算法
步骤 1 - 导入“re”模块以使用正则表达式值
步骤 2 - 将正则表达式存储在名为“pattern”的变量中。
步骤 3 - 使用正则表达式将 findall() 函数定义为两个参数:pattern 和 sentence。
步骤 4 - 最后,打印语句。
示例
#importing the re module import re #the input is initialized with a word starting with g and followed by one or two e’s sentence = "geetanjali, gear, gemma, hello" #Initializing the variable to store the value pattern = r'\bg\w*e+\w*\b' #Using the findall function, to match the pattern with the sentence matching = re.findall(pattern, sentence) #The list is returned with the string values print("Words which are matching from the input:",matching)
输出
Words which are matching from the input: ['geetanjali', 'gear', 'gemma']
方法 2:使用 match() 函数的 Python 程序来使用正则表达式匹配单词
用于查找给定句子中所有单词出现次数的方法是 match() 方法。
算法
步骤 1 - 导入使用正则表达式所需的模块。
步骤 2 - 函数用两个参数定义。
步骤 3 - 当没有匹配项时,它返回空列表。
步骤 4 - 打印最终列表。
示例
#importing the re module import re #the input is initialized with word starting with g and followed by one or two e’s sentence = "geetanjali, gear, gemma, hello" #Initializing the variable to store the value pattern = r'\bg\w*e+\w*\b' #function is defined with two parameters def matchword(pattern, sentence): if not sentence: return [] match = re.match(pattern, sentence) if match: return [match.group()] + matchword(pattern, sentence[match.end():]) else: return matchword(pattern, sentence[1:]) matching = matchword(pattern, sentence) #The list is returned with the string values print("Words which are matching from the input:",matching)
输出
Words which are matching from the input: ['geetanjali', 'gear', 'gemma']
方法 3:使用 finditer() 函数的 Python 程序来使用正则表达式匹配单词
与 findall 方法相比,finditer() 用于打印给定句子中所有以“g”开头并后跟一个或两个“e”的匹配项。
算法
步骤 1 - 导入所需的“re”模块以使用正则表达式值。
步骤 2 - 初始化输入并由各种单词组成。
步骤 3 - 将正则表达式存储在名为“pattern”的变量中。
步骤 4 - 使用正则表达式将 findall() 函数定义为两个参数:pattern 和 sentence。
步骤 5 - 最后,打印语句。
示例
#importing the re module import re #the input is initialized with a word starting with g and followed by one or two e’s sentence = "geek, gear, gemma, hello" #Initializing the variable to store the value pattern = r'\bg\w*e+\w*\b' #Using the finditer function, to match the pattern with the sentence matches = re.finditer(pattern, sentence) #for loop is used to iterate through the sentence for match in matches: print(match.group())
输出
geek gear gemma
结论
正则表达式的一个常见用途是搜索包含特定字符序列的单词,例如“g”后跟一个或多个“e”。可以使用 Python 及其内置的正则表达式模块轻松匹配此模式。使用各种方法解释了匹配单词出现次数的各种方法。