Version: 2017.1
public static string GetUniqueName (string[] existingNames, string name);

Parameters

existingNames A list of pre-existing names.
name Desired name to be used as is, or as a base.

Returns

string A name not found in the list of pre-existing names.

Description

Make a unique name using the provided name as a base.

If the target name is in the provided list of existing names, a unique name is generated by appending the next available numerical increment.

using UnityEngine;
using UnityEditor;

public class ExampleClass { public void Example() { string[] names = new string[] { "Object", "Thing", "Thing (1)" };

// will display "Object (1)" Debug.Log(ObjectNames.GetUniqueName(names, "Object"));

// will display "Thing (2)" Debug.Log(ObjectNames.GetUniqueName(names, "Thing"));

// will display "Other" Debug.Log(ObjectNames.GetUniqueName(names, "Other")); } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961