Вы можете использовать это awk
решение, чтобы получить список всех n
буквенных подстрок и их частот:
awk -v n=4 '{
for (i=1; i<=NF; i++)
for (j=1; j<=length($i)-n+1; j++)
w[substr($i, j, n)]++
}
END {
for (i in w) print i, w[i]
}' file
appl 2
ensi 1
nana 1
mang 1
sive 1
anan 1
nsiv 1
grea 1
pens 1
xpen 1
bana 1
ples 2
pple 2
expe 1
reat 1
ango 1
How about this:
MyObject myObject = new MyObject();
Type type = myObject.GetType();
if(typeof(YourBaseObject).IsAssignableFrom(type))
{
//Do your casting.
YourBaseObject baseobject = (YourBaseObject)myObject;
}
This tells you if that object can be casted to that certain type.
I think you need to restate your conditions, because if obj
is an instance of Derived
, it will also be an instance of Base
. And typ.IsIstanceOfType(obj)
will return true.
class Base { }
class Derived : Base { }
object obj = new Derived();
Type typ = typeof(Base);
type.IsInstanceOfType(obj); // = true
type.IsAssignableFrom(obj.GetType()); // = true
Если вы работаете с экземплярами, вы должны использовать Type.IsInstanceOfType
(Возвращает) истина, если текущий тип в иерархии наследования объект, представленный o, или если Текущий тип - это интерфейс, который опоры. ложь, если ни один из них условия это случай, или если о nullNothingnullptra нулевая ссылка (Ничего в Visual Basic), или если текущий тип является открытым универсальным типом (то есть ContainsGenericParameters возвращает истину). - MSDN
Base b = new Base();
Derived d = new Derived();
if (typeof(Base).IsInstanceOfType(b))
Console.WriteLine("b can come in."); // will be printed
if (typeof(Base).IsInstanceOfType(d))
Console.WriteLine("d can come in."); // will be printed
Если вы работаете с объектами Type, вам следует взглянуть на Type.IsAssignableFrom
(Возвращает) true, если c и текущий тип. представляют один и тот же тип, или если Текущий тип находится в наследстве иерархия с, или если текущий тип интерфейс, который реализует с, или если c является параметром универсального типа и текущий тип представляет собой один из ограничения с. ложь, если ни один из эти условия выполняются, или если с nullNothingnullptra нулевая ссылка (Ничего в Visual Basic). - MSDN