【问题标题】:Illegal character sequence \p' in string literal字符串文字中的非法字符序列 \p'
【发布时间】:2018-07-03 18:38:48
【问题描述】:

执行以下代码时:

string query = 'select id from ClientData__c';
string Point05 = '%\\file-01\projects\Internal Audit\Internal Audit 
Team\FY18\SOX\Testing%';

query += ' WHERE Point05__c LIKE \'' + Point05 + '\'';

List<ClientData__c> clientData = database.query(query);

我收到以下错误:

行:2,列:18 非法字符串文字:无效的字符串文字 '%\file-01\projects\Internal Audit\Internal Audit Team\FY18\SOX\Testing%'。字符串文字中的非法字符序列 \p'。

【问题讨论】:

  • 这不是正则表达式问题。您需要告诉我们此代码所在的 whnch 编程语言 - edit 请使用标签 - 以获得有效的帮助;但基本上,每个反斜杠都需要加倍。许多 Windows 程序员更喜欢使用 Unix 风格的正斜杠而不是反斜杠;这应该可以透明地解决问题。
  • 为什么这个标签是正则表达式?
  • 什么语言,C#?
  • 对不起大家。这是 Salesforce Apex 代码。

标签: salesforce apex force.com


【解决方案1】:

反斜杠 (\) 通常用作转义字符。就像您在 query 行中使用来转义单引号 (')。

在这里,为了在您的字符串中使用,您需要使用双反斜杠来转义行反斜杠。只需更改为:

string Point05 = '%\\\\file-01\\projects\\Internal Audit\\Internal Audit Team\\FY18\\SOX\\Testing%';

您可能会发现它的用途here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-14
    • 1970-01-01
    • 1970-01-01
    • 2020-10-05
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    相关资源
    最近更新 更多