найти заглавные буквы и преобразовать их в строчные буквы наоборот, используя регулярное выражение js - PullRequest
1 голос
/ 25 октября 2019
document.getElementById('generate').addEventListener('click', createPassword)

function createPassword(){
    var len= document.getElementById('length').value;
    var password=''

    for(let i=0; i<len; i++){
        var random= Math.floor(Math.random()*94)+33
        password+= String.fromCharCode(random)
    }

    document.getElementById('result').innerText=password;

    var uppercase= document.getElementById('uppercase')
    var upperCheck= uppercase.checked


    if(upperCheck!=true){

        var result=password.replace(/[A-Z]/g,/\U$1$2/);

        console.log(result)
    }



}

Я пытаюсь просмотреть строку, созданную случайным образом, и преобразовать все заглавные буквы в строчные, используя регулярное выражение и наоборот.

1 Ответ

0 голосов
/ 25 октября 2019

Вы можете использовать функцию в качестве второго аргумента метода replace, чтобы использовать toLower/toUpperCase функции с регулярным выражением:

document.getElementById('generate').addEventListener('click', createPassword)

function createPassword(){
    var len= document.getElementById('length').value;
    var password=''

    for(let i=0; i<len; i++){
        var random= Math.floor(Math.random()*94)+33
        password+= String.fromCharCode(random)
    }

    document.getElementById('result').innerText="Generated: "+ password;

    var uppercase= document.getElementById('uppercase')

    var modified;
    console.clear(); // just to clear console if retried.
    if (uppercase.checked){
        modified = password.replace(/[a-z]/g,  function(match) {return match.toUpperCase(); });
    } else {
        modified = password.replace(/[A-Z]/g,  function(match) {return match.toLowerCase(); });
    }
    console.log("Modified:", modified)
}
<input type="text" id="length" value ="10"/>

<input type="button" value="generate" id="generate"/>
<input type="checkbox" id="uppercase"/>
<p id="result"></p>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...