如果只有空格和换行符,则Nullify Rich Text Area

时间:2018-03-27 06:02:24

标签: regex salesforce workflow richtextbox

如果只包含空格和换行符,则尝试使富文本区域字段无效。即使文本区域中只有一个单词,我也不应该取消。因为它包含了在UI中占用太多空间。注意 - 即使单个工作有多个尾随和前导whitesapces /换行符,它应该按原样显示。

我构建了一个匹配此场景的正则表达式,但它没有传递工作流入口条件。

正则表达式:

  

" ^ [\ S<&GT峰; br /] + $"

检查此正则表达式检查程序以获取详细信息 - https://regexr.com/(置于正则表达式并检查)

任何帮助将不胜感激!。

1 个答案:

答案 0 :(得分:0)

我认为你真正需要的是等同于String.IsNullOrWhiteSpace(value)

function IsNullOrWhiteSpace( value) {    
    if (value== null) return true;    
    return value.replace(/\s/g, '').length == 0;
}

    function IsNullOrWhiteSpace( value) {    
        if (value== null) return true;    
        return value.replace(/\s/g, '').length == 0;
    }
    
    console.log(IsNullOrWhiteSpace("\t \n   \t"));
    
    var multilineString = "\
    \
    \
      ";
   console.log(IsNullOrWhiteSpace(multilineString));
   console.log(IsNullOrWhiteSpace(" a"));
   

您的富文本控件应该允许您将文本作为纯文本获取。然后事情变得更容易,因为RTF的空白规则有点奇怪:

  

在RTF中,规则为   处理空白是非常不同的:
   - 空间角色是   只有当它是最后的可选无意义空间时才有意义   一个命令。否则,每个空格字符都意味着插入一个空格   性格!
   - 换行符可以标记命令的结束;然而在其他方面,   它没有任何效果或意义。 Ref

无论如何,你的正则表达式应该在Javaish-lingo中看起来像这样:

[\\s<>br/]+$