Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Regex / System / Text / RegularExpressions / RegexGroup.cs / 1305376 / RegexGroup.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- // Group represents the substring or substrings that // are captured by a single capturing group after one // regular expression match. namespace System.Text.RegularExpressions { using System.Security.Permissions; ////// Group /// represents the results from a single capturing group. A capturing group can /// capture zero, one, or more strings in a single match because of quantifiers, so /// Group supplies a collection of Capture objects. /// #if !SILVERLIGHT [ Serializable() ] #endif public class Group : Capture { // the empty group object internal static Group _emptygroup = new Group(String.Empty, new int[0], 0); internal int[] _caps; internal int _capcount; internal CaptureCollection _capcoll; internal Group(String text, int[] caps, int capcount) : base(text, capcount == 0 ? 0 : caps[(capcount - 1) * 2], capcount == 0 ? 0 : caps[(capcount * 2) - 1]) { _caps = caps; _capcount = capcount; } /* * True if the match was successful */ ////// public bool Success { get { return _capcount != 0; } } /* * The collection of all captures for this group */ ///Indicates whether the match is successful. ////// public CaptureCollection Captures { get { if (_capcoll == null) _capcoll = new CaptureCollection(this); return _capcoll; } } /* * Convert to a thread-safe object by precomputing cache contents */ ////// Returns a collection of all the captures matched by the capturing /// group, in innermost-leftmost-first order (or innermost-rightmost-first order if /// compiled with the "r" option). The collection may have zero or more items. /// ////// #if !SILVERLIGHT [HostProtection(Synchronization=true)] static public Group Synchronized(Group inner) { #else static internal Group Synchronized(Group inner) { #endif if (inner == null) throw new ArgumentNullException("inner"); // force Captures to be computed. CaptureCollection capcoll; Capture dummy; capcoll = inner.Captures; if (inner._capcount > 0) dummy = capcoll[0]; return inner; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //Returns /// a Group object equivalent to the one supplied that is safe to share between /// multiple threads. ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- // Group represents the substring or substrings that // are captured by a single capturing group after one // regular expression match. namespace System.Text.RegularExpressions { using System.Security.Permissions; ////// Group /// represents the results from a single capturing group. A capturing group can /// capture zero, one, or more strings in a single match because of quantifiers, so /// Group supplies a collection of Capture objects. /// #if !SILVERLIGHT [ Serializable() ] #endif public class Group : Capture { // the empty group object internal static Group _emptygroup = new Group(String.Empty, new int[0], 0); internal int[] _caps; internal int _capcount; internal CaptureCollection _capcoll; internal Group(String text, int[] caps, int capcount) : base(text, capcount == 0 ? 0 : caps[(capcount - 1) * 2], capcount == 0 ? 0 : caps[(capcount * 2) - 1]) { _caps = caps; _capcount = capcount; } /* * True if the match was successful */ ////// public bool Success { get { return _capcount != 0; } } /* * The collection of all captures for this group */ ///Indicates whether the match is successful. ////// public CaptureCollection Captures { get { if (_capcoll == null) _capcoll = new CaptureCollection(this); return _capcoll; } } /* * Convert to a thread-safe object by precomputing cache contents */ ////// Returns a collection of all the captures matched by the capturing /// group, in innermost-leftmost-first order (or innermost-rightmost-first order if /// compiled with the "r" option). The collection may have zero or more items. /// ////// #if !SILVERLIGHT [HostProtection(Synchronization=true)] static public Group Synchronized(Group inner) { #else static internal Group Synchronized(Group inner) { #endif if (inner == null) throw new ArgumentNullException("inner"); // force Captures to be computed. CaptureCollection capcoll; Capture dummy; capcoll = inner.Captures; if (inner._capcount > 0) dummy = capcoll[0]; return inner; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.Returns /// a Group object equivalent to the one supplied that is safe to share between /// multiple threads. ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DragCompletedEventArgs.cs
- FilteredSchemaElementLookUpTable.cs
- AccessControlEntry.cs
- ValidationHelpers.cs
- UnSafeCharBuffer.cs
- TraceContextRecord.cs
- Int32Rect.cs
- LazyTextWriterCreator.cs
- XmlWriter.cs
- ProcessInfo.cs
- PolyQuadraticBezierSegment.cs
- WinHttpWebProxyFinder.cs
- ExplicitDiscriminatorMap.cs
- JsonClassDataContract.cs
- Axis.cs
- Point.cs
- KeyManager.cs
- XpsTokenContext.cs
- XmlSchemaRedefine.cs
- DoubleIndependentAnimationStorage.cs
- CompModSwitches.cs
- HeaderedItemsControl.cs
- OdbcStatementHandle.cs
- QueryResponse.cs
- ControlPropertyNameConverter.cs
- OracleDataReader.cs
- DbReferenceCollection.cs
- DoubleCollectionValueSerializer.cs
- RuntimeResourceSet.cs
- KeyboardNavigation.cs
- XsdDuration.cs
- UIElementHelper.cs
- SerializationBinder.cs
- DbExpressionBuilder.cs
- DataGridViewColumnDesignTimeVisibleAttribute.cs
- FileSecurity.cs
- DocumentXmlWriter.cs
- VSWCFServiceContractGenerator.cs
- BridgeDataRecord.cs
- RenderOptions.cs
- RegionData.cs
- ExtensionCollection.cs
- OutgoingWebRequestContext.cs
- WebPartAddingEventArgs.cs
- SynthesizerStateChangedEventArgs.cs
- QueryAccessibilityHelpEvent.cs
- FileIOPermission.cs
- ObjRef.cs
- HtmlCommandAdapter.cs
- ReverseQueryOperator.cs
- PermissionSet.cs
- Int64AnimationBase.cs
- IdentityHolder.cs
- Grant.cs
- WebPartActionVerb.cs
- ContentPlaceHolder.cs
- WebRequestModulesSection.cs
- ColumnCollectionEditor.cs
- BaseCAMarshaler.cs
- DeviceFiltersSection.cs
- PrintPreviewControl.cs
- JapaneseCalendar.cs
- Underline.cs
- BreakSafeBase.cs
- UnsupportedPolicyOptionsException.cs
- ExpressionVisitor.cs
- TrackingCondition.cs
- ItemsChangedEventArgs.cs
- ItemContainerGenerator.cs
- PersianCalendar.cs
- ClientSettingsSection.cs
- BaseCodeDomTreeGenerator.cs
- webeventbuffer.cs
- QilNode.cs
- ParenthesizePropertyNameAttribute.cs
- AssociationSetMetadata.cs
- SystemMulticastIPAddressInformation.cs
- SynchronousChannel.cs
- ManagementExtension.cs
- BaseAddressElementCollection.cs
- RuntimeEnvironment.cs
- PropertyTabAttribute.cs
- WindowInteropHelper.cs
- ToolStripDropTargetManager.cs
- TriggerBase.cs
- relpropertyhelper.cs
- TypeValidationEventArgs.cs
- Renderer.cs
- DataTableMappingCollection.cs
- BufferBuilder.cs
- ObfuscateAssemblyAttribute.cs
- NetStream.cs
- SqlCommandSet.cs
- DataGridViewCellLinkedList.cs
- ConfigurationManager.cs
- ZipFileInfo.cs
- TimeIntervalCollection.cs
- HierarchicalDataSourceControl.cs
- StateRuntime.cs
- HtmlTableCell.cs