如何使用regexp match列出Racket中给出的所有内容

如何使用regexp match列出Racket中给出的所有内容,racket,Racket,如果给我一组数据 "data-symbol='1' data-symbol='2' data-symbol='3' data-symbol='4' " 如何使用regexp match从字符串中提取数字并将其放入列表中 '1234,不需要订购。此外,对于数字,它们可以是任何仅用作示例的内容。您可以与捕获组一起使用,并从字符串中提取信息: > (map string->number (regexp-match* #px"data-symbol='(\\d+)'"

如果给我一组数据

"data-symbol='1'
 data-symbol='2'
 data-symbol='3'
 data-symbol='4' "
如何使用regexp match从字符串中提取数字并将其放入列表中 '1234,不需要订购。此外,对于数字,它们可以是任何仅用作示例的内容。

您可以与捕获组一起使用,并从字符串中提取信息:

> (map string->number
       (regexp-match* #px"data-symbol='(\\d+)'"
                      "data-symbol='1'
                       data-symbol='2'
                       data-symbol='3'
                       data-symbol='4'"
                      #:match-select second))
'(1 2 3 4)
函数查找给定字符串中正则表达式的所有匹配项,并且:match select用于选择要在结果中返回的捕获组。然后用于将匹配的每个元素转换为数值

不过要小心:看起来您可能正试图用正则表达式解析HTML,正如在这个网站上臭名昭著的那样。考虑使用一个球拍的HTML解析库代替.

你可以同时使用捕捉群组并从字符串中提取信息:

> (map string->number
       (regexp-match* #px"data-symbol='(\\d+)'"
                      "data-symbol='1'
                       data-symbol='2'
                       data-symbol='3'
                       data-symbol='4'"
                      #:match-select second))
'(1 2 3 4)
函数查找给定字符串中正则表达式的所有匹配项,并且:match select用于选择要在结果中返回的捕获组。然后用于将匹配的每个元素转换为数值


不过要小心:看起来您可能正试图用正则表达式解析HTML,正如在这个网站上臭名昭著的那样。考虑使用一个球拍的HTML解析库。

不要担心我不想解析HTML,而且我很清楚这个帖子LOL。谢谢你的回答。不用担心我不想解析HTML,而且我很清楚这个帖子。谢谢你的回答。