将.html添加到字符串Javascript?

将.html添加到字符串Javascript?,javascript,string,add,Javascript,String,Add,我想检查字符串是否以“.php”扩展名结尾,如果不是,我想在末尾添加.html。我已经尝试过各种“切片”方法,但都没有成功。您可以使用Regex来实现这一点 var string1 = "www.example.com/index"; var newString = !/\.php$/i.test(string1)? string1+".html": string1; // newString = "www.example.com/index.html" 试试这样的 function isPH

我想检查字符串是否以“.php”扩展名结尾,如果不是,我想在末尾添加.html。我已经尝试过各种“切片”方法,但都没有成功。

您可以使用Regex来实现这一点

var string1 = "www.example.com/index";
var newString = !/\.php$/i.test(string1)? string1+".html": string1;
// newString = "www.example.com/index.html"

试试这样的

function isPHP(str)
{
    return str.substring(str.length - 4) == ".php";
}
那你就可以做了

str = isPHP(str) ? str : str + ".html";
使用
(yourstring+'.html')。替换(/\.php\.html$/,'.php')
来执行此操作:

var str1 = 'one.php';
var str2 = 'two';
var str3 = '.php.three.php';
var str4 = '.php.hey';

console.log((str1 + '.html').replace(/\.php\.html$/, '.php')); // Prints one.php
console.log((str2 + '.html').replace(/\.php\.html$/, '.php')); // Prints two.html
console.log((str3 + '.html').replace(/\.php\.html$/, '.php')); // Prints .php.three.php
console.log((str4 + '.html').replace(/\.php\.html$/, '.php')); // Prints .php.hey.html
或许:

function appendHTML(string) {
    var html = string;
    if (string.lastIndexOf('.php') === (string.length - 4)) {
        html += '.html';
    }
    return html;
}

使用正则表达式来解决您的问题。 /.php$/是一个正则表达式,用于检查字符串是否以“.php”结尾

欲了解更多信息,请阅读:

示例代码:

str = "http://abc.com";
str = ( /\.php$/.test( str ) ) ? str : str + '.html'; // this is the line you want.

str === "http://abc.com.html" // returns true
嗯,
slice()
可以完成这项任务

var s = "myfile.php";

if (s.slice(-4) != ".php")
    s = s.slice(0, -4) + ".html";

它不会是<代码>(St.List- 4)吗?假设没有病理病例“php”发生在中间的某个地方。“DaveNewton Nope,他明白了。请注意标记字符串结尾的
$
。@Imp他后来添加了这个,所以Dave当时是正确的。@palp.R.O。嗯?那为什么没有
编辑。。。ago
子句?@Imp当您在发布后5分钟内进行编辑时,它没有这样写:@user1317928请尝试用代码解释您的问题(您尝试过),如果可能的话,从下次开始