var string_array=[];
var con =new RegExp(/[bcdfghjklmnpqrstvwxyz.]/);
string_array = str.split('');
for(var i=0;i<string_array;i++){
if(con.test(string_array[i])){
string_array.shift(string_array[i]);
console.log(shifted_array);
}
what would be wrong would this somehow the test method on the array element doesn’t seem to work,even though the array element is a string.
Could someone please help?
Sorry this is the whole code.I was just trying to concentrate on that small part of it as I don’t think there is anything wrong
with the rest.
function translatePigLatin(str) {
var bunch_of_constanents =[];
var string_array=[];
var vowel = new RegExp(/[aioue.]/);
var con =new RegExp(/[bcdfghjklmnpqrstvwxyz.]/);
var suffix = "way";
var shifted_array =[];
var how_Long = str.length;
if(vowel.test(str.charAt(0))){
var str2 = str+suffix;
return str2;
}
string_array = str.split('');
for(var i=0;i<string_array;i++){
if(con.test(string_array[i])){
string_array.shift(string_array[i]);
console.log(shifted_array);
}
else{
break;
}
}
}
translatePigLatin("california");
This is the whole code.I was just trying to concentrate on a small area of it in the previous post.
function translatePigLatin(str) {
var bunch_of_constanents =[];
var string_array=[];
var vowel = new RegExp(/[aioue.]/);
var con =new RegExp(/[bcdfghjklmnpqrstvwxyz.]/);
var suffix = "way";
var shifted_array =[];
var how_Long = str.length;
if(vowel.test(str.charAt(0))){
var str2 = str+suffix;
return str2;
}
string_array = str.split('');
for(var i=0;i<string_array;i++){
if(con.test(string_array[i])){
string_array.shift(string_array[i]);
console.log(shifted_array);
}
else{
break;
}
}
}
translatePigLatin("california");
Any regex with /[{a load of other characters}.]/ will match any character other than line breaks, because that’s what the dot . signifies. So vowel and con are functionally the same as each other.
Right managed to do it after a good few hours but its a bit long what do you think?
What gave me a problem was that the shift method was changing the order of the array.So I simply changed this because the shift function kinda iterates the array for you.
for(var i=0;i<string_array.length;i++)
to this
for(var i=0;i<string_array.length;)
function translatePigLatin(str) {
var string_array=[];
var vowel = /[aioue]/;
var con = /[bcdfghjklmnpqrstvwxyz]/;
var suffix = "way";
var consonant_suffix ="ay";
var shifted_array =[];
var consonant=" ";
if(vowel.test(str.charAt(0))){
var str2 = str+suffix;
return str2;
}
string_array = str.split('');
for(var i=0;i<string_array.length;){
if(con.test(string_array[i])){
console.log(consonant);
consonant = string_array.shift();
shifted_array.push(consonant);
}
else{
var new_string_array = string_array.join('');
var new_shifted_array = shifted_array.join('');
var str3 = new_string_array.concat(new_shifted_array+consonant_suffix);
return str3;
}
}
}
translatePigLatin("glove");