Function to check whether a combination of letters appears in a sequence of random words and determine where exactly are they

check if words are sorted according to new order of alphabets
find anagrams in a list of words python
find all anagrams in a list of words java
print all pairs of anagrams in a given array of strings
given millions of words, return all groups of strings that are anagrams
group anagrams python
sorting on a custom alphabet pure storage
find all anagrams of a word

I created a function in javascript to generate a random string with a certain length in either uppercase/lowercase or both.

    function randomString(max, option) {
      var rNum = [];
      if (option.toLowerCase() === "lowercase") {
        for (let i = 0; i < max; i++) {
          var randomNumber = Math.floor(Math.random() * (122 - 97) + 97);
      } else if (option.toLowerCase() === "uppercase") {
        for (let i = 0; i < max; i++) {
          var randomNumber = Math.floor(Math.random() * (90 - 65) + 65);
      } else if (option.toLowerCase() === "both") {
        for (let i = 0; i < max; i++) {
          var n = Math.floor(Math.random() * (122 - 65) + 65);
          while ([91, 92, 93, 94, 95, 96].includes(n)) {
            //If the random number is between 90 and 97 then we keep generating new numbers:
            n = Math.floor(Math.random() * (122 - 65) + 65);
      } else {
        return "Second parameter not valid, please type 'lowercase','uppercase' or 'both'";
      var word = "";
      for (let i = 0; i < rNum.length; i++) {
        var letter = String.fromCharCode(rNum[i]);
        word += letter;
      return word;

Now I wanted to create a second function that given any string from the user, it checks whether that word appears in the randomly generated string.

I started it and honestly I simply have no idea how to do it. How do I check where in that long string there is indeed the word which I don't know how long it is. I guess it can see if it does exist or not, but how do i find its position? I tried using array.indexOf(userString), but it only returns the first time it appears.

function findWordsByChance(letters) {
  var myString = randomString(999999, "both");
  var splited = myString.split("");
  if (splited.includes(letters)) {
    console.log("this combination exists");
  } else {
    console.log("it doesnt");

  for (let i = 1; i < splited.length - 1; i++) {
    //check where it is (??)

I'm still quite new to programming, so give me a break if I made any stupid mistakes :) btw, if you guys got any tips on how to do something I already did but in a more efficient way, I'd appreciate.

indexOf accepts a second parameter which defines a start offset, so you can use this to loop through and find every occurrence. You just need to make the start point immediately past the last occurrence for each iteration. Here's how I'd write the function:

function indexOfAll(needle, haystack) {
  var indices = [];
  var index = 0;
  while ((index = haystack.indexOf(needle, index)) > -1) {
    index += needle.length;
  return indices;

console.log(indexOfAll("oat", "goat in a boat"));

Given a sequence of words, print all anagrams together, Populate the Hash Table with these hash values. Following is another method to print all anagrams together. Take two auxiliary arrays, index array and word array. Populate the word array with the given sequence of words. of the characters of each string and the outer HashMap will check whether that� In particular, for any possible random result (a sequence of 64 hexadecimal characters), it is impossible to find a data file F with this fingerprint in a reasonable amount of time. There have

You can use the simple .match() function in javascript to find a string in another string.

var myString = randomString(100, "both");
// myString = "fAuqxBfkXprhvRqOGLPmTiFbhrZtjXXMFwircAGBBtIkiDbGHPvYymMlabJyeAKUtIYNedUpNPlaeEcjIsSeEtOUriHTuCtbpNZX"

var result = myString.match('rZtjX');
// result[0] is your search string...the "letters" value
// result[1] is where the string was found

// If you want to get all occurrences where the search string was found you can use the function below. 

findOccurrences = (needle, haystack) => {
    const pieces = haystack.split(needle);
    if (!pieces.length) {
        return console.log('No Matches');
    let index = 0;
    pieces.forEach((piece) => {
        index += piece.length;
        console.log(needle, ' found at ', index);
        index += needle.length;
findOccurrences('LPmT', myString);
LPmT  found at  17
LPmT  found at  47
LPmT  found at  81
LPmT  found at  99
LPmT  found at  112

Combinations and Permutations, For example, there are 6 permutations of the letters a, b, c: How many 4 letter “ words” can you make from the letters a through f, with no repeated letters? A BLAST alignment consists of a pair of sequences, in which every letter in one sequence is paired with, or “aligned to,” exactly one letter or a gap in the other. The alignment score is computed by assigning a value to each aligned pair of letters and then summing these values over the length of the alignment.

You could turn their input into a regex.

const inputRegex = new RegExp(input, 'g')

Then you could use string.matchAll() to get all instances of matches.

const matches = randomLetters.matchAll(inputRegex)

But that gives you an iterator. To have it as an array, you'd do this instead:

const matches = [...randomLetters.matchAll(inputRegex)]

Now, each item in matches is an object with a key index referring to its position on the string.

You can learn more at MDN.

7. Strings — How to Think Like a Computer Scientist: Learning with , The len function returns the number of characters in a string: Often they start at the beginning, select each character in turn, do something to it, and shows how to use concatenation and a for loop to generate an abecedarian series. To see if two strings are equal: if word == "banana": print "Yes, we have no bananas!". bool() is a built-in function in Python 3. This function returns a Boolean value, i.e. True or False. It takes one argument, x. Arguments. It takes one argument, x. x is converted using the standard Truth Testing Procedure. Return Value. If x is false or omitted, this returns False; otherwise it returns True. Code Sample

Check if a character string is not random, D is equal to 0.25 for each letter, and each letter is independent of the other one, then both words are exactly equally probable. but there is no test for " randomness", as without further assumptions or knowledge to me (no letter appears with itself, which is probably unusual for a sequence this long). Random Sequence Generator. This form allows you to generate randomized sequences of integers. The randomness comes from atmospheric noise, which for many purposes is better than the pseudo-random number algorithms typically used in computer programs.

Possible three letter words (video), Sal explains how to find all of the possible three letter words when we can use but what if Duration: 5:39 Posted: Aug 10, 2015 The Exact Function. The Exact function’s task is to go through the rows of two columns and find matching values in the Excel cells. Exact means exact. On its own, the Exact function is case sensitive. It won’t see New York and new york as being a match.

Intro to combinations (video) | Combinations, I thought that in combinations you couldn't use the same people. Like in combinations we Duration: 6:18 Posted: Dec 16, 2014 A random variable x has a distribution function.To define this, we do not need a list of numbers. It’s a theoretical concept. In this case, to define the distribution, we define capital F of a as a function that answers the question, what is the probability that x is less than or equal to a. There is no list of numbers.

  • but this .match() function only gives the position of the first appearance, right? So it's pretty much like indexOf();
  • @VinyZiks Updated the post
  • Nice and simple solution, but be aware that this is still considered experimental, so it is not compatible with internet explorer, microsoft edge, safari, or safari mobile.