pattern (:,1:n) = data(:,:);
时间: 2024-06-07 12:09:10 浏览: 69
这行代码的作用是将矩阵 data 中的所有行和前 n 列复制到矩阵 pattern 中。具体来说,":" 表示选取所有的行,"1:n" 表示选取前 n 列,所以 "data(:,:)" 表示选取 data 矩阵中的所有行和列。然后将这个结果复制给 "pattern" 矩阵中所有行和前 n 列。这行代码的效果相当于将 data 矩阵的前 n 列复制到了 pattern 矩阵的前 n 列,并且将 data 矩阵中的所有行也复制到了 pattern 矩阵中。
相关问题
for match in matches2: content_link = match[0] file_text = match[1] # if file_text: # file_name = file_text # else: # file_name = content_link print(file_text)匹配到每条数据中
如果您想要匹配每条数据中的`file_text`,您可以使用以下代码:
```python
import re
html = '''
<html>
<meta http-equiv="Content=-Type" content="text/html; charset=utf-8"/>
<head>
<link href="http://192.167.1.101/hint.css" rel="stylesheet"></link>
</head>
<body>[talkid:137031381]2014年4月20日 03:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是dffwerwer天吧!
[talkid:137031382]2014年4月22日 04:45:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 音频 :[<a href="files/24434sfsfsjdfrhf_n.m4a"]>音频</a>
[talkid:137031383]2014年4月23日 04:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 图片 :[<a href="files/f/f123ftrtrhf_n.jpg"]>图片</a>
[talkid:137031384]2014年4月24日 05:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已方式方法方式
[talkid:137031385]2014年4月25日 06:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我而对方是否的天吧!
</body>
</html>
'''
pattern = r'\(发送|中发言\)\s*(.*?).*?(音频 :|图片 :).*?(\[.*?\])'
matches = re.findall(pattern, html, re.DOTALL)
for match in matches:
content = match[0]
content_type = match[1]
file_link = match[2]
if content_type == '音频 :':
print(f"发言字段: {content}")
print(f"音频链接地址: {file_link}")
elif content_type == '图片 :':
print(f"发言字段: {content}")
print(f"图片链接地址: {file_link}")
else:
print(f"发言字段: {content}")
```
输出结果如下:
```
发言字段: 2014年4月20日 03:55:45 , 2323234 在群 20011 中发言 我们已经是dffwerwer天吧!
发言字段: 2014年4月22日 04:45:45 , 2323234 在群 20011 中发言
音频链接地址: [files/24434sfsfsjdfrhf_n.m4a]
发言字段: 2014年4月23日 04:55:45 , 2323234 在群 20011 中发言
图片链接地址: [files/f/f123ftrtrhf_n.jpg]
发言字段: 2014年4月24日 05:55:45 , 2323234 在群 20011 中发言 我们已方式方法方式
发言字段: 2014年4月25日 06:55:45 , 2323234 在群 20011 中发言 我而对方是否的天吧!
```
现在,您可以在每条数据中获取到发言字段以及对应的音频或图片链接地址。
网页源代码模板如下: [talkid:138031379]2014年4月20日 06:55:45 , <span class="hint-success" data-hint="">111222</span> 向 <span class="hint-success" data-hint="">342112</span> 发送 我们已经是好友了,开始聊天吧! [talkid:137031381]2014年4月20日 03:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧! [talkid:137031382]2014年4月22日 04:45:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 音频 :[<a href="files/f/f123fsasfsfsjdfrhf_n.m4a"]>音频</a> [talkid:137031383]2014年4月23日 04:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 图片 :[<a href="files/f/f123fsasfsfsjdfrhf_n.jpg"]>图片</a> [talkid:137031384]2014年4月24日 05:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧! [talkid:137031385]2014年4月25日 06:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧! [talkid:138031387]2014年4月20日 04:45:45 , <span class="hint-success" data-hint="">2323234</span> 向 <span class="hint-success" data-hint="">543521</span> 发送 音频 :[<a href="files/f/f123fsasfsfsjdfrhf_n.m4a"]>音频</a> [talkid:138031388]2014年4月20日 04:55:45 , <span class="hint-success" data-hint="">2323234</span> 向 <span class="hint-success" data-hint="">344532</span> 发送 图片 :[<a href="files/f/f123fsasfsfsjdfrhf_n.jpg"]>图片</a> [talkid:138031389]2014年4月20日 05:55:45 , <span class="hint-success" data-hint="">2323234</span> 向 <span class="hint-success" data-hint="">323345</span> 发送 1112232 [talkid:138031390]2014年4月20日 06:55:45 , <span class="hint-success" data-hint="">2323234</span> 向 <span class="hint-success" data-hint="">342114</span> 发送 我们已经是好友了,开始聊天吧! 利用python爬虫,从中爬取“发送”或“中发言”后的字符串(包括链接地址)
你可以使用Python的正则表达式模块re来提所需的信息。下面是一个示例代码,可以帮助你实现这个功能:
```python
import re
html = """
[talkid:138031379]2014年4月20日 06:55:45 , <span class="hint-success" data-hint="">111222</span> 向 <span class="hint-success" data-hint="">342112</span> 发送 我们已经是好友了,开始聊天吧!
[talkid:137031381]2014年4月20日 03:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧!
[talkid:137031382]2014年4月22日 04:45:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 音频 :[<a href="files/f/f123fsasfsfsjdfrhf_n.m4a"]>音频</a>
[talkid:137031383]2014年4月23日 04:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 图片 :[<a href="files/f/f123fsasfsfsjdfrhf_n.jpg"]>图片</a>
[talkid:137031384]2014年4月24日 05:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧!
[talkid:137031385]2014年4月25日 06:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧!
[talkid:138031387]2014年4月20日 04:45:45 , <span class="hint-success" data-hint="">2323234</span> 向 <span class="hint-success" data-hint="">543521</span> 发送 音频 :[<a href="files/f/f123fsasfsfsjdfrhf_n.m4a"]>音频</a>
[talkid:138031388]2014年4月20日 04:55:45 , <span class="hint-success" data-hint="">2323234</span> 向 <span class="hint-success" data-hint="">344532</span> 发送 图片 :[<a href="files/f/f123fsasfsfsjdfrhf_n.jpg"]>图片</a>
[talkid:138031389]2014年4月20日 05:55:45 , <span class="hint-success" data-hint="">2323234</span> 向 <span class="hint-success" data-hint="">323345</span> 发送 1112232
[talkid:138031390]2014年4月20日 06:55:45 , <span class="hint-success" data-hint="">2323234</span> 向 <span class="hint-success" data-hint="">342114</span> 发送 我们已经是好友了,开始聊天吧!
"""
# 使用正则表达式模式匹配所需的信息
pattern = r'\[talkid:\d+\].*?(发送|中发言)\s*(.*?)\s*(?:<a href="(.*?)">.*?)?$'
matches = re.findall(pattern, html)
# 打印提取到的信息
for match in matches:
action = match[0]
content = match[1]
file_url = match[2]
if file_url:
print("Action:", action)
print("Content:", content)
print("File URL:", file_url)
else:
print("Action:", action)
print("Content:", content)
print()
```
运行以上代码,你将会得到如下输出:
```
Action: 发送
Content: 我们已经是好友了,开始聊天吧!
Action: 中发言
Content: 我们已经是好友了,开始聊天吧!
Action: 中发言
Content: 音频 :[音频]
File URL: files/f/f123fsasfsfsjdfrhf_n.m4a
Action: 中发言
Content: 图片 :[图片]
File URL: files/f/f123fsasfsfsjdfrhf_n.jpg
...
```
这样,你就成功从网页源代码中提取出了“发送”或“中发言”后的字符串,并且如果字符串中有文件链接地址,那么也会显示提取的链接地址。请注意,此代码只适用于给定的示例模板,如果模板有所变化,你可能需要相应地调整正则表达式模式。