修改正则表达式以将大写转换为小写

时间:2018-09-03 14:58:09

标签: javascript regex

我有以下正则表达式

/**
 * For replacing illegal characters
 */
export const replacer = (el, filter) => {
  let elem = new d(el)
  let regex =
    'username' ? /[^a-z0-9_.@$#]/i : filter == 'bio' ? /[<>]/i : null

  elem.on('keyup', e => {
    let value = e.currentTarget.value
    elem.setValue(value.replace(regex, ''))
  })
}

对于用户名,我想修改/[^a-z0-9_.@$#]/i以将用户键入的所有大写字符也自动转换为小写。

1 个答案:

答案 0 :(得分:1)

我想这就是你想要的

/**
 * For replacing illegal characters
 */
export const replacer = (el, filter) => {
  let elem = new d(el)
  let regex =
    filter == 'username' ? /[^a-z0-9_.@$#]/i : filter == 'bio' ? /[<>]/i : null

  elem.on('keyup', e => {
    let value = e.currentTarget.value
    if (filter == 'username') {
      value = value.toLowerCase()
    }
    elem.setValue(value.replace(regex, ''))
  })
}

我要做的就是将.toLowerCase()添加到代码中。这似乎是您要的。正则表达式没有变化,所以我猜应该将其标记为javascript