从字符串中提取数据的最佳方法

用户名

我有一个字符串:

__cfduid=d2eec71493b48565be764ad44a52a7b191399561601015; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.planetminecraft.com; HttpOnly

我想使用正则表达式并获取如下内容:

[0] = __cfduid=d2eec71493b48565be764ad44a52a7b191399561601015
[1] = expires=Mon, 23-Dec-2019 23:50:00 GMT
[2] = path=/
[3] = domain=.planetminecraft.com
[4] = HttpOnly

我尝试过此正则表达式:

[\A|;](.*?)[\Z|;]

我不明白为什么\A可以,但是[\A]不可以,我如何创建(\A;)?

在此正则表达式的最终形式中,我想从字符串中获取以下内容:

[0] = {
    [0] = __cfduid
    [1] = d2eec71493b48565be764ad44a52a7b191399561601015
}
[1] = {
    [0] = expires
    [1] = Mon, 23-Dec-2019 23:50:00 GMT
}
[2] = {
    [0] = path
    [1] = /
}
[3] = {
    [0] = domain
    [1] = .planetminecraft.com
}
[4] = {
    [0] = HttpOnly
}
杰瑞

您可以尝试在此正则表达式上进行匹配:

\s*([^=;]+)(?:=([^=;]+))?

描述:

\s*         # Match any spaces
([^=;]+)    # Match any non = or ; characters
(?:
  =         # Match an = sign
  ([^=;]+)  # Match any non = or ; characters.
)?          # Make this group optional

regex101演示

在代码中:

string text = "__cfduid=d2eec71493b48565be764ad44a52a7b191399561601015; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.planetminecraft.com; HttpOnly";

var regex = new Regex(@"\s*([^=;]+)(?:=([^=;]+))?");
var matches = regex.Matches(text);
foreach (Match match in matches)
{
    Console.WriteLine(match.Groups[1].Value + "\n" + match.Groups[2].Value + "\n");
}

ideone演示


\A起作用,但[\A]不是因为当您放入\A字符类时,它像大多数正则表达式元字符一样失去了其含义。例如,+并且*也失去了意义。在中[\A],正则表达式实际上是在尝试匹配,\A并且由于它在字符类中没有特定的含义,因此它表示文字A

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java从字符串中提取部分的最佳方法

来自分类Dev

MySQL-从字符串中提取整数的最佳方法

来自分类Dev

Java从字符串中提取部分的最佳方法

来自分类Dev

从 C 中较长的字符串中提取子字符串的最佳方法是什么

来自分类Dev

从字符串中提取数据的最声明式方法

来自分类Dev

在VBA中从字符串提取数据的最佳方法

来自分类Dev

从json字符串中提取数据

来自分类Dev

从字符串中提取数据

来自分类Dev

从Json字符串中提取数据

来自分类Dev

从JSON字符串中提取数据

来自分类Dev

从字符串中提取波斯数据

来自分类Dev

从 xml 字符串中提取数据

来自分类Dev

Python 从字符串中提取数据

来自分类Dev

从传递给方法的扫描仪字符串中提取数据

来自分类Dev

如何使用从此字符串中提取数据

来自分类Dev

仅从匹配字符串的列中提取数据

来自分类Dev

从json字符串中提取数据返回错误

来自分类Dev

从字符串和文本数据中提取年份

来自分类Dev

gnuplot:从数据中的字符串中提取x值

来自分类Dev

如何从JSON字符串中提取python数据帧

来自分类Dev

Python从数据框列中提取未知字符串

来自分类Dev

从字符串中提取特定数据

来自分类Dev

从Bash中的字符串中提取数据

来自分类Dev

c编程-从文件中提取数据字符串

来自分类Dev

使用Python从XML字符串中提取数据

来自分类Dev

如何从给定的字符串中提取数据URL?

来自分类Dev

从字符串中提取mysql中的数据

来自分类Dev

从json字符串数据中提取值

来自分类Dev

从字符串中提取特定数据