首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

QRegExp用法:如何从html字符串中获取图片名称?

QRegExp是Qt框架中用于字符串匹配和替换的正则表达式类。通过使用QRegExp,您可以方便地从HTML字符串中获取图片名称。

以下是一个示例代码,演示如何使用QRegExp从HTML字符串中提取图片名称:

代码语言:txt
复制
#include <QRegExp>
#include <QString>
#include <QDebug>

int main()
{
    QString htmlString = "<img src='image.jpg'><img src='image2.png'><img src='image3.gif'>";

    QRegExp regex("<img src='(\\w+\\.\\w+)'>"); // 正则表达式匹配<img src='图片名称'>的模式
    QStringList imageNames; // 用于存储图片名称的列表

    int pos = 0; // 匹配起始位置

    while ((pos = regex.indexIn(htmlString, pos)) != -1) {
        QString imageName = regex.cap(1); // 获取匹配到的图片名称
        imageNames.append(imageName);
        pos += regex.matchedLength(); // 移动到下一个匹配位置
    }

    // 打印提取到的图片名称
    foreach (const QString &imageName, imageNames) {
        qDebug() << imageName;
    }

    return 0;
}

上述代码中,首先定义了一个HTML字符串htmlString,其中包含了多个<img>标签,并且每个标签都包含一个src属性,属性值是图片的文件名。

然后,创建了一个QRegExp对象regex,并指定了一个正则表达式<img src='(\\w+\\.\\w+)'>,用于匹配<img>标签中的图片文件名部分。

接下来,使用indexIn()函数进行正则表达式匹配,将匹配结果保存到imageNames列表中。

最后,通过循环遍历imageNames列表,打印出提取到的图片名称。

请注意,上述代码中的正则表达式只适用于示例中给出的HTML字符串格式。如果HTML字符串的格式有所不同,可能需要修改正则表达式以适应新的匹配模式。

在腾讯云产品中,可以使用云函数(Serverless Cloud Function SCF)来执行类似的任务,通过编写函数代码来提取HTML中的图片名称。您可以通过腾讯云函数文档了解更多关于云函数的详细信息和使用方法:云函数产品介绍

希望以上内容能够满足您的需求,如果还有其他问题,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

直播带货小程序源码,商品详情页是如何获取html图片

在搭建直播带货小程序源码过程,需要为商品构建详情页,而商品页图片是要通过html获取并展示到本地的,那么这个过程是如何实现的?...图片集合: } /*返回html图片集合*/ public static List returnImageUrlsFromHtml(String htmlCode) {     List...;     }     if (imageSrcList == null || imageSrcList.size() == 0) {         Log.e("imageSrcList","资讯未匹配到图片链接...    if(index==-1){         index=0;     }     showGalleryDialog(index); } 5、WebView加载url,并调整WebView图片的大小...("about:blank", html, mimeType,             encoding, ""); } 以上就是搭建直播带货小程序,商品详情页是如何获取html图片并在本地展示的过程

1.3K20
  • Qt正则表达式类QRegExp(附检验小程序)

    在许多场景,我们需要验证用户输入的数据是否有效,或者是查找并修改文本,或者是提取指定数据,为此,相对于Qstring的一些函数,QT提供了一个更加强大的类——QRegExp,使用函数配合正则表达式来操作字符串...一.正则表达式相关函数用法 1.提取数据 matchedLength() 匹配的长度 capturedTexts() 捕捉到的字符串列表,   对应的还有captureCount() ,获取表达式中含有的捕捉组的数目...同上,只是后向前搜索 QString str = "(.*)=(.*)"; QRegExp rx_1(str); QString str_1 = (...匹配pattern,匹配pattern并捕获结果,自动获取组号 (?...2.修改文本        将匹配到的字符串替换成其他字符串,例如将文本的a=100修改为b=100 QString str = "a=100"; s.replace(QRegExp("(.*)=")

    6.7K21

    如何jdbc获取数据库建表语句信息(表字段名称表字段类型表字段注释信息表字段长度等等)

    * 如何jdbc获取数据库建表语句信息(表字段名称/表字段类型/表字段注释信息/表字段长度等等) * 1,表字段名称 * 2,表字段类型 * 3,表字段注释信息 这里介绍3种方式,如下:...第二种方式:直接jdbc数据库连接Connection实例获取 三种方式获取的数据有一些区别 第一种方式不能获取到的信息比较丰富,但是唯一不能获取的是表字段备注信息,其他信息基本都有了 第二种方式可以获取完整的建表语句...com.baomidou.mybatisplus.generator.config.DataSourceConfig; import lombok.extern.slf4j.Slf4j; import java.sql.*; /** * 如何...jdbc获取数据库建表语句信息(表字段名称/表字段类型/表字段注释信息/表字段长度等等) * 1,表字段名称 * 2,表字段类型 * 3,表字段注释信息 */ @Slf4j public class...create table user_pop_info how2ObtainFieldInfoFromJdbc.method2(); // 第二种方式:直接jdbc数据库连接Connection实例获取

    4.8K10

    【python爬虫 2】BeautifulSoup快速抓取网站图片

    第二步:分析网站因素 我们知道我们需要抓取的是那一个网站数据,因此,我们要来分析一下网站是如何提供数据的。 根据分析之后,所有页面似乎都是相同的,那我们选择一个摄影图来为大家做演示。...1、获取列表标题,以及链接 进一步研究页面数据,每一个页面,下方都有一个列表,然后通过列表标题,进入到下一级。那这个页面我们需要获取列表标题。...2、获取图片列表,以及链接,以及翻页操作 继续分析,点击链接进入之后,发现有已经有图片了列表,并且还可以翻页。 3、获取图片详情,所有图片 再点击继续研究,发现图片还有多张。...for j in i.find_all("a"): try: j.find("img").get("src") name=j.get("title")#列表列表图片名称...1、掌握BeautifulSoup 区分find,find_all的用法:find,查找第一个返回字符串,find_all 查找所有,返回列表 区分get,get_text的用法:get获取标签的属性

    1.3K20

    【QT】常用控件(三)

    pos位置开始是否能够验证通过 { ui->pushButton->setEnabled(true); } else { ui->pushButton...,而不是字符串的中间或末尾开始 1:这个字符直接出现在正则表达式,表示匹配字符串的字符“1”,这意味着任何被这个正则表达式匹配的字符串都必须以数字1开头 \d:这部分稍微复杂一些。...但是,在大多数编程语言中,字符串的反斜杠(\)是一个转义字符,用于表示特殊字符或字符类,因此,为了在字符串中表示\d这个正则表达式模式,我们需要对反斜杠本身进行转义,即使用两个反斜杠(\),所以,\d...在字符串中表示的是正则表达式的 \d,用于匹配任何一个数字字符 {10}:这是一个量词,用于指定前面的字符类(在这个例子是\d,即任何一个数字字符)应该出现的次数,{10} 表示前面的字符类应该恰好出现...,不能有多余的字符 lineedit_2 2、Text Edit 属性 说明 markdown 输入框内容支持markdown格式 html 输入框内容支持大部分html标签 placeHolderText

    7210

    从零开始学正则

    正则的 是符合贪婪模式的,所以它会匹配到后者,因为后者的字符串更长. 'abcccccccbcc'.replace(/a..../html|css|js/---匹配htmlcssjs | 的优先级很低很低 的优先级比“连接”(就是字符串)低,如要在正则的字符串里使用 的话要加括号,提高优先级。...图片文件名的形式为: 名称.后缀名,其中名称可以是任意的字符串,但不能为空;后缀名可以是jpg,jpeg,bmp,png和gif,不区分大小写⑤ 承接上题,把匹配的图片文件名里的“名称”和“后缀名”部分取出来...比如abc.jpeg的名称和后缀名分别为“abc”和“jpeg”(提示:使用exec方法)⑥ 承接上题,把匹配的图片文件名替换为“File XXX is a YYY file.”的形式,其中XXX是“名称...图片文件名的形式为: 名称.后缀名,其中名称可以是任意的字符串,但不能为空;后缀名可以是jpg,jpeg,bmp,png和gif,不区分大小写 /^\w+\.

    1.3K80

    阿想1号的功能清单

    权限: 所有人 ---- /roll 说明: 骰子~用法:1d10 或 2d10+2d10+more 权限: 所有人 需要at: 否 更多别名: 无 /roll 说明: 骰子~用法:1d10 或 2d10...权限: 所有人 ---- 拍立得 说明: 获取一张以自己头像的拍立得图片!...订阅群组 删除 在子频道使用该命令时,将 该子频道 订阅子频道 删除 所有订阅 命令:show_all(showall,select_all,selectall,所有订阅) 参数:[关键词](支持正则...,生效对象限定为只带 1 张图片的消息此外,如果属性带有 or 说明判断逻辑是任一匹配即去重,默认为全匹配-1 设为禁用 图片数量限制 -img_num 正整数 只发送限定数量的图片,防止刷屏 正文待移除内容...-rm_list 无空格字符串 / -1 正文中要移除的指定内容,支持正则表达式因为参数解析的缘故,格式必须如:rm_list='a' 或 rm_list='a','b'该处理过程是在解析 html

    77820

    Web---演示Servlet的相关类、下载技术、线程问题、自定义404页面

    方法: getInitParameter //获取单个配置的参数 getInitParameterNames //获取所有配置的名称集合 getServletContext //获取ServletContext...name 对应的值jack 方法: getInitParameter //获取单个配置的参数 getInitParameterNames //获取所有配置的名称集合 演示ServletContext...width:800px;height:400px;overfow:auto'>"+ msgs+" "; //overflow 设置或获取表明当内容超出对象高度或宽度时如何管理对象内容的值...获取服务器目录的绝对路径–遍历图片浏览 index.jsp: 演示ServletContext类的用法---获取服务器目录的绝对路径--图片浏览<br/...,这些字符串指定此抽象路径名表示的目录的文件和目录。

    69920

    JavaScript---网络编程(5)-自定义对象Json、Dom模型概念讲解

    换言之,HTML DOM 是关于如何获取、修改、添加或删除 HTML 元素的标准。 在这里,我们学的是HTML-DOM。 什么是 JSON ? JSON 比 XML 更小、更快,更易解析。...属性— 描述 appCodeName— 获取浏览器的代码名称。 appMinorVersion— 获取应用程序的次版本值。 appName —获取浏览器的名称。...cookieEnabled— 获取客户端的永久 cookie 是否在浏览器启用。永久 cookies— 是储存在客户端计算机上的。 cpuClass— 获取指示 CPU 等级的字符串。...userAgent —获取等同于 HTTP 用户代理请求头的字符串。 userLanguage —获取操作系统的自然语言设置。...()" /> 这里很简单,就不贴浏览器演示结果图片了。

    80810

    PHP-ThinkPHP框架学习

    ; } } URL请求 入口文件是项目的单一入口,对项目的所有请求都定向到项目的入口文件,系统会URL参数解析当前请求的模块和操作,我们之前访问的URL地址没有任何参数,因此系统会访问默认模块...,还提供变量过滤和默认值支持,用法很简单,只需要在Action调用下面方法: $id = $this->_get('id'); // 获取get变量 $name = $this->_post('name...方法,默认不会执行更新和删除操作 TABLE table 定义要操作的数据表名称,动态改变当前操作的数据表名称,需要写数据表的全名,包含前缀,可以使用别名和跨库操作 用法 table($table)...参数 table(必须):数据表名称,支持操作多个表,支持字符串、数组和对象 返回值 当前模型实例 备注 如果不调用table方法,会自动获取模型对应或者定义的数据表 DATA data 可以用于新增或者保存数据之前的数据对象赋值...常用方法 方法 作用 支持的参数类型 where 用于查询或者更新条件的定义 字符串、数组和对象 table 用于定义要操作的数据表名称 字符串和数组 alias 用于给当前数据表定义别名 字符串

    6.9K00

    爬虫篇| 网页解析库xpath和BeautifulSoup(五)

    BeautifulSoup 是一个可以HTML或XML文件中提取数据的Python库,它的使用方式相对于正则来说更加的简单方便,常常能够节省我们大量的时间。...在这里插入图片描述 BeautifulSoup BeautifulSoup 对象表示的是一个文档的全部内容.大部分时候,可以把它当作 Tag 对象,是一个特殊的 Tag Comment Comment指的是在网页的注释以及特殊字符串...如何使用 获取标签 title = soup.head.title(获取head标签下面的第一个title标签) 获取属性 title = soup.p['title'] 获取文本内容 # string...用法(一) ? 用法(二) ?...用法(三) 用text()获取某个节点下的文本(重点) result=html.xpath('//li[@class="item-0"]/text()') 实战演练 爬取妹子图 网址:https://

    2.9K30

    数据分析入门系列教程-数据采集

    爬虫就是自动获取网页内容的程序,例如搜索引擎,Google,Baidu 等,每天都运行着庞大的爬虫系统,全世界的网站爬虫数据,供用户检索时使用。...'style': "color:#ff0000"})) # 获取文档中所有的 span 且 style 符合规则的节点,返回一个 list 具体的用法和效果,我会在后面的实战详细说明。...可以清晰的看到,每张图片都是保存在 li 标签的,图片的地址保存在 li 标签的 img 。...知道了这些规律后,我们就可以通过 BeautifulSoup 或者 XPath 来解析 HTML 页面,从而获取其中的图片地址。...文件夹,os.path.exists os 库是非常常用用来操作系统相关的命令库,os.mkdir 就是创建文件夹 split 用于切割字符串,取出角标为7的元素,作为存储图片名称 with 方法用来快速打开文件

    97351

    在windows下检查应用程序是否为兼容模式启动及使用Qt输出系统信息

    兼容模式启动输出结果.png 三、如何判断程序为使用兼容模式启动 1、修改应用程序以兼容模式启动会发生些什么?...注册表信息.png 2、Qt读取注册表信息并判断是否是兼容模式启动 使用QSettings来读取注册表的内容,然后判断注册表的key有没有包含测试程序的,如果有那么测试程序就是以兼容模式启动的。...QStringList groupsList = settings.childKeys(); for each (QString key in groupsList) { QRegExp...,此类为QSysInfo 它内部有获取当前应用程序启动系统信息的方法,详见下图: ?...例子.png 五、当前测试程序获取系统名称的代码如下: QString getCurrentAppRunSys() { QString strSysName = ""; QSysInfo

    1.8K40

    pyqt5 lineedit_pyqt5 tablewidget

    textChanged 当修改文本内容时,这个信号就会发射 editingFinished 当编辑文本结束时,这个信号就会发射 定义输入掩码的字符 下表列出了输入掩码的占位符和字面字符,并说明其如何控制数据输入...关闭大小写转换 \ 使用‘\’转义上面列出的字符 掩码由掩码字符与分隔符字符串组成,后面可以跟一个分号和空白字符,空白字符在编辑后会文本删除的 掩码示例如下: 掩码 注意事项 000.000.000.000...pDatelineEdit.setInputMask('0000-00-00') #许可证掩码 pLiceseLineEdit.setInputMask('>AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;#') #添加名称与控件到表单布局...,有效范围(0.99-99.99),保留两位小数 e2.setValidator(QDoubleValidator(0.99,99.99,2)) #表单布局 flo=QFormLayout() #添加名称及控件到布局...发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/185372.html原文链接:https://javaforall.cn

    1.3K20

    python GUI库图形界面开发之PyQt5单行文本框控件QLineEdit详细使用方法与实例

    PyQt5单行文本框控件QLineEdit介绍 QLineEdit类是一个单行文本框控件,可以输入单行字符串。...这个信号就会发射 textChanged 当修改文本内容时,这个信号就会发射 editingFinished 当编辑文本结束时,这个信号就会发射 定义输入掩码的字符 下表列出了输入掩码的占位符和字面字符,并说明其如何控制数据输入...关闭大小写转换 \ 使用‘\’转义上面列出的字符 掩码由掩码字符与分隔符字符串组成,后面可以跟一个分号和空白字符,空白字符在编辑后会文本删除的 掩码示例如下: 掩码 注意事项 000.000.000.000...0000-00-00') #许可证掩码 pLiceseLineEdit.setInputMask(' AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;#') #添加名称与控件到表单布局...,保留两位小数 e2.setValidator(QDoubleValidator(0.99,99.99,2)) #表单布局 flo=QFormLayout() #添加名称及控件到布局

    2.2K21
    领券