c# - 更改字符串中的特殊字符
问题描述
我正在使用 c# 并且在 appsettings.json 的代码中,如果存在特殊字符,我会获取字符串并转换它们。这是我的代码
int? a = applicationRequestViewModel.GetApplicantIndex();
int? g = applicationRequestViewModel.GetGurantorIndex();
foreach (var keys in _options.Value.RegisterParamKeys)
{
string value = keys.Split(";")[0];
string name = keys.Split(";")[1];
string key = value.Split(":")[typeOfApplicant];
key = Regex.Replace(key, @"[^\[a\]]", "[" + a + "]");
key = Regex.Replace(key, @"[^\[g\]]", "[" + g + "]");
var registrationProperty = new RegistrationProperty() { };
registrationProperty.Name = name;
registrationProperty.Value = (string)rss.SelectToken(key);
listOfRegistrationProperty.Add(registrationProperty);
}
从 appsettings.json 我拿了下面的字符串
"RegisterBatchParams": [
"applicationInfo.applicationNumber:applicationInfo.applicationNumber:applicationInfo.applicationNumber:applicationInfo.applicationNumber;applicationNumber",
"applicationInfo.applicantType:applicationInfo.applicantType:applicationInfo.applicantType:applicationInfo.applicantType;applicantType",
"applicationInfo.customerSegment:applicationInfo.customerSegment:applicationInfo.customerSegment:applicationInfo.customerSegment;customerSegment",
"applicationInfo.applicationStatusLocalText:applicationInfo.applicationStatusLocalText:applicationInfo.applicationStatusLocalText:applicationInfo.applicationStatusLocalText;applicationStatus",
"applicationRequestViewModel.applicants[a].businessPartner.person.firstName:applicationRequestViewModel.applicants[a].businessPartner.person.firstName:applicationRequestViewModel.applicants[a].businessPartner.person.firstName:applicationRequestViewModel.applicants[a].businessPartner.person.firstName;customerName"
],
对于我想"applicants[a]"
用索引号更改为的最后一个字符串,但它没有按预期转换如何正确转换?
正如预期的结果
applicationRequestViewModel.applicants[0].businessPartner.person.firstName
但给出的结果
a[0][0][0][0][0]a[0][0][0][0][0][0][0][0][0]a[0][0][0][0][0]a[0][0][0][0][0][0][0][0][0][0]
解决方案
而不是@"[^\[a\]]"
使用@"\[a\]"
.
但是你甚至不需要正则表达式。简单string.Replace
也可以完成这项工作。
推荐阅读
- c# - 使用 GraphAPI / C# 在 AzureAD 中删除应用程序角色的问题
- angular - Angular innerHTML 无法识别 HTML 标签
- jdbc - 如何将 Google Data Studio 连接到 AWS Athena?
- angular - 每当关闭浏览器选项卡/窗口时,Angular 应用程序变得不可用
- select - 在 DB2 中为 type1 或 type2 选择前 5 行
- sbt - 当构建插件的 Git 存储库无法下载时,SBT 会静默终止
- laravel - 在 laravel 中实时处理
- javascript - 从 URL 字符串获取常量变量
- xml - Odoo 10 缺少表单视图按钮作为 view_mode 虽然它是
- javascript - Dynamics CRM 已读/未读表单