在Javacript / Groovy中使用正则表达式屏蔽移动电话号码

时间:2020-04-17 17:04:27

标签: java regex

我正在尝试使用replaceAll屏蔽手机号码 遮罩应该是这样的

<form action="https://xxx.usxx.list-manage.com/subscribe/post-json" method="post" className="validate" target="hiddenFrame" > <!--u and id values from url generated by Mailchimp form builder --> <input type="hidden" name="u" value="xxxxxxxx" /> <input type="hidden" name="id" value="xxxxxxx" /> <input type="hidden" name="c" value="?" /> </form> <iframe name="hiddenFrame" src="about:blank" style={{display:'none'}}></iframe>

+1(123)456-7890 ----> +1(2**)4**-**78

+11234567890 -----> +12**4****78

我尝试使用代码

+1-123-456-7890 --->+1-2**-4**-**78

但它会屏蔽除最后4个数字之外的所有数字

任何帮助将不胜感激


1 个答案:

答案 0 :(得分:0)

您可以使用正则表达式

$orig_ratio = $orig_width / $orig_height;
$thumb_ratio = $values['w'] / $values['h'];

$diff = abs($orig_ratio - $thumb_ratio);

// crop if ratio differenz small
if ($diff < 0.26) {
    $image = $image->resize($values['w'], $values['h'], 'outside', 'any');
    $image = $image->crop("center", "middle", $values['w'], $values['h']);
} else {
    // ...
}

匹配整个字符串并将其替换为

@RequiredArgsConstructor
public final class ObjectToString {

    private final String delimiter;
    private final List<String> functions = new ArrayList<>();

    public ObjectToString add(final List<String> func) {
        functions.add(func);
        return this;
    }

   // Rest excluded

Demo

Javascript的正则表达式引擎执行以下操作。

db.collection.find( {'top':1} ).min("timestamp")