Linux统计文本中某个字符串出现的次数

常用的有如下两种方式:

1.VIM
用vim打开文件,然后输入:
:%s/hello//gn
统计文本中”hello”字符串出现的次数
说明:
%s/pattern/string/flags 意思是把pattern替换为string
参数说明:
% - 指明操作区间,%表示全文本;可以使用1,$或者行区间代替 %s相当于1,$s

s – substitute,表示替换

g是全局

pattern - 要查找的字符串

// - 替代文本应该放在这里,两个斜杠中间没有任何字符表示无替代文本

g – Replace all occurences in the line. Without this argument, replacement occurs only for the first occurence in each line.

n – Report the number of matches, and do not actually substitute. 这是核心功能,同时也说明为什么//之间可以添加任意字符。

一些引申出的应用:

(1) :k,ls/pattern//gn

统计k行到l行出现pattern的次数

(2) :%s/pattern//gn

统计在当前编辑文本出现的次数

2.GREP配合wc命令 统计在文件中出现的行数
grep -o “hello” demo.log | wc -l

另外附上几个grep常用的参数:
-o 一条数据里面有多个相同,会统计相同的次数
-c 只显示有多少行匹配 ,而不具体显示匹配的行
-i 在字符串比较的时候忽略大小写
-n 在每一行前面打印该行在文件中的行数

在Python,你可以使用多种方法来统计一段字符串特定字符串出现次数。最直接的方法是使用字符串的`count()`方法。下面是一个简单的例子: ```python # 假设我们要统计字符串是这段文本 text = "这是一个示例文本,用于演示如何计算特定字符串出现次数。" # 我们要统计的特定字符串是"示例" target = "示例" # 使用count()方法计算特定字符串出现次数 count = text.count(target) print(f"字符串'{target}'在文本出现了{count}次。") ``` 这段代码会输出字符串`"示例"`在`text`字符串出现次数。 除了`count()`方法之外,你还可以使用正则表达式模块`re`来完成同样的任务,尤其是在需要进行更复杂的模式匹配时。例如,如果你想统计包含特定子串的单词数量,或者忽略大小写等。 ```python import re # 使用正则表达式统计包含特定子串的单词数量,忽略大小写 text = "这是一个示例文本,用于演示如何计算特定字符串出现次数。示例文本可以有多个示例。" target = "示例" # 使用re.findall方法查找所有匹配的单词,然后计算数量 matches = re.findall(r'\b' + re.escape(target) + r'\b', text, re.IGNORECASE) count = len(matches) print(f"字符串'{target}'在文本出现了{count}次。") ``` 这个例子使用了`re.findall()`方法,它返回所有匹配的子串列表,然后我们可以简单地通过计算列表的长度来得到匹配的次数。`re.IGNORECASE`标志用于忽略大小写。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值