This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let sampleWord = "astronaut"; | |
let pwRegex = /(?=\w{5,})(?=\w+\d{2})/; // Change this line | |
let result = pwRegex.test(sampleWord); | |
// Your regex should use two positive lookaheads. | |
// Your regex should not match "astronaut" | |
// Your regex should not match "airplanes" | |
// Your regex should not match "banan1" | |
// Your regex should match "bana12" | |
// Your regex should match "abc123" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function convertToRoman(num) { | |
var singles = ["", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"]; | |
var tens = ["", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"]; | |
var hundreds = ["", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"]; | |
var thousands = ["", "M", "MM", "MMM", "MMMM"]; | |
//turn the number to a string, split individual characters and then turn each one to a number. | |
var length = num.toString().length; | |
var numbers = num.toString().split("").map(Number); | |
var roman = ''; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function myReplace(str, before, after) { | |
//search for the before string and then use a function to check for capitalisation before replacing. | |
str = str.replace(before, function(x){ | |
//check whether the first letter of before is a capital | |
//replace after with a capitalised first letter and then | |
//the rest of the string, cannot just replace first letter as its read only. | |
if(before[0] == before[0].toUpperCase()){ | |
after = after[0].toUpperCase() + after.slice(1); | |
return after; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function translatePigLatin(str) { | |
var vowels = ['a','e','i','o','u']; | |
var strArr = str.split(''); //split the string into an array | |
//walk through the string array and test for vowels. | |
for(var i = 0; i<strArr.length; i++){ | |
//if the letter is a vowel create the new string | |
if(vowels.includes(strArr[i])){ | |
//if the first letter is a vowel just add 'way' to the end. | |
if(i == 0){ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function fearNotLetter(str) { | |
//in unicode A=65 and Z=90, a=97 and z=122 | |
//get the starting letter's unicode, and then add one to check the next letter | |
var start = str.charCodeAt(0) + 1; | |
var missing = ''; //store missing letters | |
//loop over the string, get the letters unicode value and compare it to what the next letter's code should be: | |
for(var i = 1; i < str.length; i++){ | |
//if the codes don't match append the letter to the variable | |
if(str.charCodeAt(i) !== start){ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function sym(args) { | |
//Put the arguments into an array | |
var arrArgs = Array.prototype.slice.call(arguments); | |
//Function to compare two arrays by reducing each one in | |
//comparison with the other. Check if the item in first array | |
//is also in the second array, if it isn't push it to the accumulator. | |
//then repeat the other way around. | |
function compareArrays(arr1, arr2){ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* UPDATED NOVEMBER 2021 to work with the latest FreeCodeCamp tests | |
Design a cash register drawer function checkCashRegister() that accepts purchase price as the first argument (price), | |
payment as the second argument (cash), and cash-in-drawer (cid) as the third argument. | |
cid is a 2D array listing available currency. | |
The checkCashRegister() function should always return an object with a status key and a change key. | |
Return {status: "INSUFFICIENT_FUNDS", change: []} if cash-in-drawer is less than the change due, or if you cannot return | |
the exact change. | |
Return {status: "CLOSED", change: [...]} with cash-in-drawer as the value for the key change if it is equal to the change due. | |
Otherwise, return {status: "OPEN", change: [...]}, with the change due in coins and bills, sorted in highest to lowest order, | |
as the value of the change key. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function booWho(bool) { | |
// What is the new fad diet for ghost developers? The Boolean. | |
//check if the value 'bool' is strictly true or false, this means the value is a Boolean Primitive and should return true. | |
//Everything else should return false. | |
if(bool === true || bool === false){ | |
return true; | |
} | |
else { | |
return false; | |
} |
NewerOlder