horizon/horizon/static/horizon/js/horizon.string.js

41 lines
1.1 KiB
JavaScript

/*
* Copyright 2015 IBM Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* A namespace for string utility functions.
*/
horizon.string = {
/**
* Escapes any characters that would have special meaning in a regular expression.
*/
escapeRegex: function(text) {
return text.replace(/([.*+?^${}()|\[\]\/\\])/g, "\\$1");
},
/**
* Escapes any HTML characters to avoid XSS.
*/
escapeHtml: function(text) {
return text.replace(/&/g, '&')
.replace(/</g, '&lt;')
.replace(/>/g, '&gt;')
.replace(/"/g, '&quot;')
.replace(/'/g, '&#x27;')
.replace(/\//g, '&#x2F;');
}
};