zhang5476499
「已注销」
采纳率80%
2016-06-27 09:26

el表达式拼接字符串!

已采纳

前端jsp页面接受后台的一个身份证号码的变量,userId,假设userId=1234567789012345678,关键是这个长度不固定,也就是说userId这个字符串的length不固定。要完成的任务是:讲倒数第五位到倒数第十位字符用'*'来替换。
ps:项目经理建议用el表达式来做,最好不用js代码。难点在于,怎么根据字符串的长度来截取字符串,也就是说,用el表达式,怎么在${fn:substring() }中嵌套&{fn:length()}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • AbsenceOfTrace 这很耳东先生 5年前

    1、15位或18位,如果是15位,必需全是数字。
    2、如果是18位,最后一位可以是数字或字母Xx,其余必需是数字。

    /^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/

    信息来源

    点赞 评论 复制链接分享
  • chenhui_ _那又怎样 5年前

    我觉得不能直接截取中间的替换,如果前五位或者后十位有跟中间要替换的字符串有相同的话,也会被替换掉。
    可以将前五位字符串截取为str1,将最后的十位以外的字符创截取为str2,然后重新拼接userId=str1 + “*” + str2

    点赞 评论 复制链接分享
  • AbsenceOfTrace 这很耳东先生 5年前

    替换有两种方法~要么在后台处理 要么前端js处理~

    点赞 评论 复制链接分享
  • qq_24334403 lobster12 5年前

    可以先获取到倒数第五位到倒数第十位的字符串,然后将字符串用*****替换

    点赞 评论 复制链接分享

相关推荐