Skip to content

Instantly share code, notes, and snippets.

@artisonian
Created July 27, 2016 19:22
Show Gist options
  • Save artisonian/b0750a8b366fdb8e6d8f574e6268f5ab to your computer and use it in GitHub Desktop.
Save artisonian/b0750a8b366fdb8e6d8f574e6268f5ab to your computer and use it in GitHub Desktop.
requirebin sketch
// Welcome! require() some modules from npm (like you were using browserify)
// and then hit Run Code to run your code on the right side.
// Modules get downloaded from browserify-cdn and bundled in your browser.
var escape = require('escape-string-regexp');
var expr = '^https?://(www.)?example.com';
var input = 'http://example.com';
log(['w/o escape', expr, (new RegExp(expr, 'i')).test(input)]);
log(['w/ escape', escape(expr), (new RegExp(escape(expr), 'i')).test(input)]);
function log (arg) {
var el = document.createElement('pre');
el.textContent = arg.toString();
document.body.appendChild(el);
}
setTimeout(function(){require=function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s}({"escape-string-regexp":[function(require,module,exports){"use strict";var matchOperatorsRe=/[|\\{}()[\]^$+*?.]/g;module.exports=function(str){if(typeof str!=="string"){throw new TypeError("Expected a string")}return str.replace(matchOperatorsRe,"\\$&")}},{}]},{},[]);var escape=require("escape-string-regexp");var expr="^https?://(www.)?example.com";var input="http://example.com";log(["w/o escape",expr,new RegExp(expr,"i").test(input)]);log(["w/ escape",escape(expr),new RegExp(escape(expr),"i").test(input)]);function log(arg){var el=document.createElement("pre");el.textContent=arg.toString();document.body.appendChild(el)}},0);
{
"name": "requirebin-sketch",
"version": "1.0.0",
"dependencies": {
"escape-string-regexp": "1.0.5"
}
}
<!-- contents of this file will be placed inside the <body> -->
<!-- contents of this file will be placed inside the <head> -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment